我正在尝试构建一个sqlite数据库,并将时间戳作为其中一列。
这是我的结构:
创建表日志(
log_id INTEGER PRIMARY KEY AUTOINCREMENT,
log_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
error_text TEXT
)
但是当我插入表格时,log_date
字段仍为空白:
INSERT INTO logs(error_text)VALUES("some error text")
我做错了什么?
答案 0 :(得分:0)
请勿在插入查询中使用null
作为占位符
这有效
INSERT INTO logs(error_text)
VALUES("some error text");
这不是
INSERT INTO logs(error_text, log_date)
VALUES("some error text", null);
答案 1 :(得分:0)
我可能遇到了同样的问题,并在寻找解决方案时找到了您的问题。
在我的情况下,问题是SQLite Administrator在所有log_date列中显示“0”。但是,在我注意到问题(更改名称以匹配您的架构)之前,在我的C#应用程序中编写“SELECT * from logs”表明数据是正确的,即使是在以前的会话中也是如此。
所以我把它归结为SQLite管理员中的一个错误,虽然没有通过快速Google搜索找到确认。