sqlite 附近语法错误

xer*_*gun 4 sql sqlite

我是 sql 新手,并尝试创建一个具有对另一个表的外键引用的表。我不断遇到语法错误,但不明白为什么。参见下面的sql语句

第一桌

sqlite> CREATE TABLE nl_central_teams ( 

   ...>  id INTEGER PRIMARY KEY AUTOINCREMENT,

   ...>  team_name VARCHAR(64) NOT NULL,

   ...>  city VARCHAR(64) NOT NULL,

   ...>  main_color VARCAR(64) NOT NULL,

   ...>  created_at DATETIME NOT NULL,

   ...> updated_at DATETIME NOT NULL

   ...> );
Run Code Online (Sandbox Code Playgroud)

第一张表工作正常。

第二张桌子

sqlite> CREATE TABLE managers(

   ...> id INTEGER PRIMARY KEY AUTOINCREMENT,

   ...> first_name VARCHAR(64) NOT NULL,

   ...> last_name VARCHAR(64) NOT NULL,

   ...> team_id INTEGER,

   ...> FOREIGN KEY(team_id) REFERENCES nl_central_teams(id),

   ...> created_at DATETIME NOT NULL,

   ...> updated_at DATETIME NOT NULL

   ...> );
Run Code Online (Sandbox Code Playgroud)

错误:“created_at”附近:语法错误

我觉得我的语法是正确的,但无法弄清楚为什么会出现此错误。任何帮助,将不胜感激,

Don*_*nal 7

外键约束应位于 CREATE TABLE 定义的末尾。

您的经理 CREATE TABLE 语句应如下所示:

CREATE TABLE managers(
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    first_name VARCHAR(64) NOT NULL,
    last_name VARCHAR(64) NOT NULL,
    team_id INTEGER,
    created_at DATETIME NOT NULL,
    updated_at DATETIME NOT NULL,
    FOREIGN KEY(team_id) REFERENCES nl_central_teams(id)
);
Run Code Online (Sandbox Code Playgroud)

请参阅此处:http ://sqlfiddle.com/#!7/f3f38/1/0