gpt4 book ai didi

sql - 在 SQL Create 语句中添加命名外键约束

转载 作者:行者123 更新时间:2023-11-29 11:06:16 28 4
gpt4 key购买 nike

我目前有:

CREATE TABLE  galleries_gallery (
id INT NOT NULL PRIMARY KEY IDENTITY,
title NVARCHAR(50) UNIQUE NOT NULL,
description VARCHAR(256),
templateID INT NOT NULL REFERENCES galleries_templates(id),
jsAltImgID INT NOT NULL REFERENCES libraryImage(id)
jsAltText NVARCHAR(500),
dateCreated SMALLDATETIME NOT NULL,
dateUpdated SMALLDATETIME NOT NULL,
lastUpdatedBy INT,
deleted BIT NOT NULL DEFAULT 0
);

但这会添加带有自动生成名称的约束,这使得以后很难删除约束。我需要添加什么才能命名约束?

上面的例子是SQL Server,我在PostgreSQL中也需要。

最佳答案

在SQL Server中,可以使用constraint关键字内联定义外键并同时命名。

这是更新后的脚本:

CREATE TABLE  galleries_gallery (
id INT NOT NULL PRIMARY KEY IDENTITY,
title NVARCHAR(50) UNIQUE NOT NULL,
description VARCHAR(256),
templateID INT NOT NULL
CONSTRAINT FK_galerry_template
REFERENCES galleries_templates(id),
jsAltImgID INT NOT NULL
CONSTRAINT FK_gallery_jsAltImg
REFERENCES libraryImage(id)
jsAltText NVARCHAR(500),
dateCreated SMALLDATETIME NOT NULL,
dateUpdated SMALLDATETIME NOT NULL,
lastUpdatedBy INT,
deleted BIT NOT NULL DEFAULT 0
);

我刚刚做了一个测试,显然同样的事情也适用于 PostgreSQL:http://www.sqlfiddle.com/#!12/2ae29

关于sql - 在 SQL Create 语句中添加命名外键约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14511796/

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