繁体   English   中英

SQL通过alter table选项添加复合主键

[英]SQL adding composite primary key through alter table option

我已经创建了一个数据库表。

表格如下所示(我在iPhone开发人员的Mac上使用sqlite)

create table
(
attendanceDate   varchar,
studentNo        integer,
absentDetail     varchar
);

现在,我已经提交了此声明。 我需要的是以下内容:

  • 添加复合主键(attandanceDate,studentNo)
  • 添加外键学生

我不知道sqlite3中的alter table语法。

所以,我需要帮助。

提前致谢。

SQLITE3没有语法可以执行所需的操作。

从位于http://www.sqlite.org/lang_altertable.html的SQLITE文档中

SQLite支持ALTER TABLE的有限子集。 SQLite中的ALTER TABLE命令允许用户重命名表或向现有表添加新列。 无法重命名列,删除列或在表中添加或删除约束。

您将需要使用定义的复合主键和外键重新创建表。

创建表时,您需要先创建主键。 据我所知,SQLLite3不支持外键约束。 查看此链接以获取更多信息。 我希望这有帮助。

通过研发,我找到了解决方案。

我认为,我应该删除表并按照以下语法重新创建表,


创建表stuAttendance(attenDate varchar,
stuNo整数,
缺少varchar,
主键(attenDate,stuNo)
外键(stuNo)引用stuClass(s​​tuNo)


那将按我的需要工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM