gpt4 book ai didi

mysql - 如何在此代码中添加只能输入某些字符的约束?

转载 作者:行者123 更新时间:2023-12-01 11:10:58 25 4
gpt4 key购买 nike

完全是 mysql 的新手,但我在网上找到解释我的问题的资源时遇到了问题。本质上,我需要向 videoCode 行添加一个约束,其中标识符是 XX## 形式的代码其中 X 是字母,# 是数字。

如有任何帮助,我们将不胜感激。

CREATE TABLE videoTable(
videoID INT,
channelID INT,
videoTitle VARCHAR(255) NOT NULL,
videoPostedDate DATE NOT NULL,
videoTags VARCHAR(255),
noViews INT NOT NULL,
videoCode VARCHAR(4) NOT NULL (ADD CONSTRAINT)

PRIMARY KEY (videoID),
FOREIGN KEY (channelID) REFERENCES channelTable(channelID)
);

最佳答案

使用 CHECK constraint :

CREATE TABLE videoTable(
videoID INT,
channelID INT,
videoTitle VARCHAR(255) NOT NULL,
videoPostedDate DATE NOT NULL,
videoTags VARCHAR(255),
noViews INT NOT NULL,
videoCode VARCHAR(4) NOT NULL CHECK(videoCode REGEXP '^[A-Za-z]{2}[0-9]+$')
PRIMARY KEY (videoID),
FOREIGN KEY (channelID) REFERENCES channelTable(channelID)
);

正则表达式描述了一个由 2 个字母字符组成的字符串,后跟数字(必须至少存在一个数字)。

注意:这需要 MySQL 8.0。在早期版本中,检查约束被解析但被忽略,您通常需要为此使用触发器。

关于mysql - 如何在此代码中添加只能输入某些字符的约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60609338/

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