读书人

SQLite3中TimeStamp的使用有关问题

发布时间: 2012-08-25 10:06:20 作者: rapoo

SQLite3中TimeStamp的使用问题
在使用SQLite3时使用了TimeStamp,但是遇到一些问题,现总结如下:

一、我的SQL语句

CREATE TABLE Logs([ID] INTEGER PRIMARY KEY,[IDCardNo] VARCHAR (50),[CreatedTime] TimeStamp NOT NULL DEFAULT CURRENT_TIMESTAMP);



INSERT INTO Logs([IDCardNo]) VALUES('11111111');



二、在使用SELECT时遇到的问题

select * from Logs 得到的结果如下

ID IDCardNo CreatedTime 2 11111111 2010-7-19 11:45:41
正确的结果应该如下:

ID IDCardNo CreatedTime 2 11111111 2010-7-19 19:45:30
在网上查找了一下,发现是时区不对造成的,请参见CURRENT_TIMESTAMP is in GMT, not the timezone of the machine
正确的方法应该如下:

select IDCardNo,Datetime(CreatedTime,'localtime') from logtable



或可以这样创建数据库表

CREATE TABLE Logs([ID] INTEGER PRIMARY KEY,[IDCardNo] VARCHAR (50),[CreatedTime] TimeStamp NOT NULL DEFAULT (datetime('now','localtime')));

读书人网 >SQL Server

热点推荐