gpt4 book ai didi

postgresql - 在表定义时检查字符串是否在列表中

转载 作者:行者123 更新时间:2023-11-29 13:17:40 24 4
gpt4 key购买 nike

我正在寻找 Slick 的翻译对于 postgresql命令。
它看起来很简单,但我找不到任何东西来实现它:

CREATE TABLE mytable (
id serial PRIMARY KEY,
type varchar (50) NOT NULL,
...
location varchar(25) check (location in ('north', 'south', 'west', 'east')),
...
created date
);

你会如何定义这条线
location varchar(25) 检查(位置在('north', 'south', 'west', 'east', 'northeast', 'southeast', 'southwest', 'northwest'))
在光滑?

我有兴趣在数据库级别应用这些字符串完整性检查
(我目前在代码级别进行)

欢迎任何帮助!

最佳答案

也许创建 ENUM 类型会更好?考虑解决这个问题。

CREATE TYPE location AS ENUM (
'north',
'south',
'west',
'east'
);

CREATE TABLE mytable (
id serial PRIMARY KEY,
type varchar (50) NOT NULL,
...
location location,
...
created date
);

关于postgresql - 在表定义时检查字符串是否在列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46662691/

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