我正在使用SQLite数据库和documentation:
SQLite中的每个表最多只能有一个PRIMARY KEY。如果关键字 PRIMARY KEY被添加到列定义,然后是主键 该表由该单列组成。或者,如果是PRIMARY KEY子句 被指定为表约束,然后是表的主键 由作为PRIMARY KEY一部分指定的列的列表组成 子句。
我的问题是,当有一列用作PRIMARY KEY
时,以下两个命令之间是否有根本区别?
CREATE TABLE t (x INTEGER, y TEXT , PRIMARY KEY (x));
CREATE TABLE t (x INTEGER PRIMARY KEY, y TEXT);
答案 0 :(得分:2)
不,没有区别(除了命名文本列一次y和一次t)。 但正如报价中已经说过的那样,可能会有所不同。如果需要两列或更多列作为主键,则必须使用第一个命令。 根据个人喜好,我总是使用第一个版本,因为我觉得它更容易阅读。