首页 > 代码库 > sqlite中的时间
sqlite中的时间
插入时间的sql语句
insert into[DataTable]([CollectDateTime],[Channel_1],[Channel_2],[Channel_3],[Channel_4],[Channel_5],[Channel_6],[Channel_7],[Channel_8],[Channel_9],[Channel_10],[Channel_11],[Channel_12],[Channel_13],[Channel_14],[Channel_15],[Channel_16],[Channel_17],[Channel_18],[Channel_19],[Channel_20],[Channel_21],[Channel_22],[Channel_23],[Channel_24],[Channel_25],[Channel_26],[Channel_27],[Channel_28],[Channel_29],[Channel_30],[Channel_31],[Channel_32],[Channel_33],[Channel_34],[Channel_35],[Channel_36],[Channel_37],[Channel_38],[Channel_39],[Channel_40],[Channel_41],[Channel_42],[Channel_43],[Channel_44],[Channel_45],[Channel_46],[Channel_47],[Channel_48],[Channel_49],[Channel_50],[Channel_51],[Channel_52],[Channel_53],[Channel_54],[Channel_55],[Channel_56],[Channel_57],[Channel_58],[Channel_59],[Channel_60]) values(‘2014-11-17T19:37:32‘,‘-152‘,‘-416‘,‘-170‘,‘-128‘,‘-154‘,‘-110‘,‘-122‘,‘24‘,‘-227‘,‘-90‘,‘-80‘,‘-98‘,‘-18‘,‘-29‘,‘120‘,‘-29‘,‘-71‘,‘-50‘,‘-76‘,‘-128‘,‘6‘,‘192‘,‘52‘,‘140‘,‘19‘,‘30‘,‘118‘,‘19‘,‘15‘,‘44‘,‘38‘,‘-112‘,‘-7‘,‘-133‘,‘-71‘,‘-23‘,‘-79‘,‘-127‘,‘-6‘,‘-119‘,‘232‘,‘-101‘,‘-146‘,‘-309‘,‘-127‘,‘-212‘,‘-181‘,‘-152‘,‘-62‘,‘-68‘,‘161‘,‘39‘,‘40‘,‘87‘,‘104‘,‘23‘,‘288‘,‘21‘,‘287‘,‘-61‘)
时间格式‘2014-11-17T19:37:32‘
年月日和时分秒之间多了一个字母T,保存到数据库的时候,会自动给时间加8个小时。 保存的结果为2014-11-18 03:37:32
时间格式‘2014-11-17 19:37:32‘ 保存到数据库的时候,直接保存。 保存的结果为2014-11-17 19:37:32
使用这个语句,从数据读取数据
SQLiteConnectionStringBuilder s = new SQLiteConnectionStringBuilder();
s.DataSource = dBName;//dBName是包含数据库文件名的路径
s.DateTimeKind = DateTimeKind.Local;
connectstring = s.ToString();
上面保存的数据,读取出来的时候,都是2014-11-17 19:37:32
但是筛选条件的时间,必须是超过2014-11-18 03:37:32,否则的话,筛选不到‘2014-11-17T19:37:32‘
如果注释掉上面的语句s.DateTimeKind = DateTimeKind.Local;
查询的时候,也是同样的效果,筛选条件的时间,必须是超过2014-11-18 03:37:32,不然也无法筛选出需要的时间
如果将s.DateTimeKind 设置为 s.DateTimeKind = DateTimeKind.Utc;
筛选时间的时候,还是需要按照超过2014-11-18 03:37:32来筛选,读取的时间显示还是2014-11-17 19:37:32
郁闷了,完全不知道设置DateTimeKind 的意义了
需要找个时间,专门写个demo研究一下
sqlite中的时间