gpt4 book ai didi

sqlite - 在SQLite中,如何更改表以添加具有默认null和外键约束的列?

转载 作者:行者123 更新时间:2023-12-03 09:44:38 24 4
gpt4 key购买 nike

SQLite文档说:


无法使用“ ALTER TABLE ... ADD COLUMN”语法来
添加包含REFERENCES子句的列,除非默认
新列的值为NULL。


我无法运行我的ALTER TABLE语句,它看起来像这样:

ALTER TABLE Customers ADD COLUMN AddressID INTEGER DEFAULT NULL FOREIGN KEY REFERENCES MasterAddress (AddressID);


我可以看到有关在 CREATE TABLE时创建约束并通过新表反射数据的解决方法的引用,但我更喜欢更改现有表。这可能吗?

我已经设置了 PRAGMA foreign_keys = ON

最佳答案

DEFAULT NULL是默认设置;您无需指定。

FOREIGN KEY用于引入表约束,但ALTER TABLE仅支持列约束。列约束的语法没有FOREIGN KEY

ALTER TABLE Customers ADD AddressID INTEGER REFERENCES MasterAddress(AddressID);

关于sqlite - 在SQLite中,如何更改表以添加具有默认null和外键约束的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49861540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com