gpt4 book ai didi

postgresql - 如何在 postgresql 数据库中创建一个包含一列枚举数据类型的表?

转载 作者:行者123 更新时间:2023-11-29 12:02:00 30 4
gpt4 key购买 nike

如何在 PostgreSQL 数据库中创建一个包含一列枚举数据类型的表?

表名: Employee

列:

ID: Integer

Name: ENUM

下面是查询,但不确定它是否正确。

CREATE TYPE Name AS ENUM();

CREATE TABLE IF NOT EXISTS Employee(
ID integer NOT NULL,
Name DEFAULT NULL,
CONSTRAINT "Employee_pkey" PRIMARY KEY (id)
);

有人可以帮忙吗

最佳答案

1.在行中

Name DEFAULT NULL,

您要么忘记了列的名称,要么将列定义为枚举类型:

myname Name DEFAULT NULL, -- add column name

Name Name DEFAULT NULL, -- add enum type


2.因为 "Name" is a keyword in Postgres您还必须更改类型名称。否则将无法运行。


3. 但是:您的枚举类型没有值。所以你不能插入任何值。您必须添加一些枚举值:

CREATE TYPE name_type AS ENUM('name1', 'name2');


决赛:

CREATE TYPE name_type AS ENUM('name1', 'name2');

CREATE TABLE Employee2(
ID integer,
myname name_type
);

demo: db<>fiddle

关于postgresql - 如何在 postgresql 数据库中创建一个包含一列枚举数据类型的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53615382/

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