gpt4 book ai didi

postgresql - 使用枚举值存储变量

转载 作者:行者123 更新时间:2023-11-29 12:10:08 24 4
gpt4 key购买 nike

我是 SQL 的新手(仍在学习)。我正在尝试为场所创建一个关系数据库来管理事件。我有一个属性,它存储哪个房间已被预订。数据类型是枚举。我的问题是我需要我的 ENUM 值(例如:Main room)来保存 int 值。每个房间都有一个容量座位和容量站。每次有人预订房间时,我不应该将它插入我的 table 。但最后我应该可以问一个房间可以容纳多少人。这可能吗?我在互联网上没有看到任何关于持有变量的信息

最佳答案

如果您正在学习数据库设计,请远离枚举。它们基本上破坏了规范化——这有时可能是特定问题的解决方案,但在您仍然试图理解这些概念时不应该使用它。您应该使用具有一对多关系的适当规范化模型。

由于您需要存储房间类型的附加信息,因此枚举首先是不可能的——这不是枚举的用途(您不能这样做)。

干净的模型应该是这样的:

create table room_type
(
type_id integer primary key,
name varchar not null unique,
max_capacity_seats integer not null,
max_capacity_standing integer not null
);

create table room
(
room_id integer primary key,
room_type_id integer not null references room_type,
description varchar,
... other columns ...
);

关于postgresql - 使用枚举值存储变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40705397/

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