SQLite-非空约束失败
我正在尝试创建一个简单的SQLite数据库,它允许我存储电子邮件地址和时间戳。我创建了如下表:SQLite-非空约束失败,sql,sqlite,constraints,Sql,Sqlite,Constraints,我正在尝试创建一个简单的SQLite数据库,它允许我存储电子邮件地址和时间戳。我创建了如下表: $sql =<<<EOF CREATE TABLE ENTRIES (ID INT PRIMARY KEY NOT NULL, EMAIL EMAIL NOT NULL, TIMESTAMP DATETIME DEFAULT CURRENT_TIMESTAMP); EOF; $sql
$sql =<<<EOF
CREATE TABLE ENTRIES
(ID INT PRIMARY KEY NOT NULL,
EMAIL EMAIL NOT NULL,
TIMESTAMP DATETIME DEFAULT CURRENT_TIMESTAMP);
EOF;
$sql =<<<EOF
INSERT INTO ENTRIES (EMAIL)
VALUES (test@test.com);
EOF;
我假设这与ID和自动增量有关?我已经阅读了文档,它建议不要使用自动增量。我哪里出错了?说:
如果表包含INTEGER主键类型的列,则该列将成为ROWID的别名
由于它成为ROWID的别名,因此无需显式指定值
您有
INT主键
,而不是整数主键
。如果您将其更改为整数主键
,它将按照您期望的方式工作。谢谢,现在有意义了我的答案未经测试。只是指出我看到+1的问题。
NOT NULL constraint failed: ENTRIES.ID