gpt4 book ai didi

sql - 如何在 CREATE TABLE 查询中命名 NOT NULL 约束

转载 作者:行者123 更新时间:2023-11-29 11:42:31 26 4
gpt4 key购买 nike

为了明天的测试,我们被告知要命名我们的约束我知道使用 ALTER TABLE 时可以创建约束但是在 CREATE TABLE 时可以给非空约束添加一个名称吗?

现在

CREATE TABLE test (
test1 VARCHAR
CONSTRAINT nn_test1 NOT NULL (test1)
)

尝试运行此查询时出现错误。我写错了吗?

我得到的错误是

ERROR:  syntax error at or near "NOT"   
LINE 3: CONSTRAINT nn_test1 NOT NULL (test1))
^
SQL state: 42601
Character: 56

最佳答案

您有两种选择来定义命名非空约束:

与列内联:

CREATE TABLE test 
(
test1 VARCHAR CONSTRAINT nn_test1 NOT NULL,
test2 integer --<< no comma because it's the last column
);

或者在列的末尾作为行外约束。但是你需要一个检查约束:

CREATE TABLE test 
(
test1 VARCHAR,
test2 integer, --<< comma required after the last column
constraint nn_test1 check (test1 is not null)
);

关于sql - 如何在 CREATE TABLE 查询中命名 NOT NULL 约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48141499/

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