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

我正在尝试创建一个简单的SQLite数据库,它允许我存储电子邮件地址和时间戳。我创建了如下表:

$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