반응형
SQLite 관련 작업중 테이블에 현재 시간을 기본설정 값으로 넣으면
우리나라 현재시간과 비교했을 때 9시간이 빠르게 나오는 현상이 발생했다.
아래는 SQLite 테이블을 만들고 기본값을 설정한 상태이다.
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table " + TABLE_NAME + " ("
+ IDX + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ REG_DATE1 + " DATETIME DEFAULT (datetime('now','localtime'))"
+ REG_DATE2 + " DATETIME DEFAULT (datetime('now'))"
+ REG_DATE3 + " DATETIME DEFAULT CURRENT_TIMESTAMP"
+ ");");
}
EX) 현재 우리나라 시간이 2016-04-26 17:46:49라고 했을때,
위의 내용에대한 결과는 아래와 같이 출력된다.
REG_DATE1 : 2016-04-26 17:46:49
REG_DATE2 : 2016-04-26 10:46:49
REG_DATE3 : 2016-04-26 10:46:49
결과를 보면
datetime('now','localtime') // => 현재 우리나라 시간과 동일한 시간을 얻는다.
datetime('now') // => 국제표준시간(UTC) 기준의 값을 출력
CURRENT_TIMESTAMP // => 국제표준시간(UTC) 기준의 값을 출력
임을 알 수 있다.
SQLite 작성과 시간에 있어 삽질시간 단축에 도움이 되었으면 한다. ^^
참고 사이트
- http://wiki.simplism.kr/programming:database:sqlite
- http://marga.tistory.com/578
반응형
'개발 공부 기록하기 > - Android' 카테고리의 다른 글
[안드로이드] 패키지명 리스트 얻기 (0) | 2016.05.17 |
---|---|
[안드로이드] 디바이스에 필요한 데이터를 컴퓨터로 가져오기 (0) | 2016.04.26 |
[안드로이드] SQLite 데이터 정보 쉽게 보기 (0) | 2016.04.26 |
[안드로이드] adb에서 apk version 확인하기 (0) | 2016.04.26 |
[안드로이드] SQLite 내용을 눈으로 확인하기 (1) | 2016.04.14 |