影院座位存储在DB

本文关键字:DB 存储 | 更新日期: 2023-09-27 17:49:25

我不确定如何准确地存储预订系统的座位。到目前为止,我一直在想我需要这些桌子。我还打算把它作为一个网页来做。

  • 节目
    • Id
    • Theather_Id
    • <
    • 名称/gh>
    • AgeRating
  • Theather
    • Id
    • <
    • 名称/gh>
  • Show_Time
    • Id
    • Show_Id
    • 时间>
  • Show_Day
    • show_time_id
  • Seat_Category
    • Id
    • <
    • 名称/gh>
  • Seat_Status
    • Id
    • <
    • 名称/gh>
  • 预订
    • id
    • rowno
    • seatno
    • 用户名(可以为空)
    • seatstatus_id
    • show_timeid
  • 用户
  • 加入
  • Show_Seat_Price
    • show_id
    • seat_category_id
    • start_row
    • start_no
    • end_row
    • end_seat
    • 价格

我最大的问题是如何在数据库中存储座位数组,我也希望使座位分类,如青铜,银,金,每个特定部分将有一个分配的定价。

空布局:


前面0 0 1 1 1 0 0
0 1 1 1 1 1 0
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1

但由于我需要金、银和铜的分类,这使事情更加复杂

影院座位存储在DB

您应该将每个可能的座位作为单独的记录存储在数据库中,数组确实不是数据库中存储的标准做法;他们必须打破一个或两个正常的形式,但我不记得是哪一个;)

每个站点都有一个行号、列号等和一个惟一的ID。这样您就可以获得每个座位的历史记录,存储每个座位的附加属性,等等。更好的!如果一个座位坏了,你可以用一个标志来禁用它——如果只有某些座位适合残疾人(比如靠近过道的座位),你也可以把它标记为这样,并查询还有多少"无障碍"座位。事实上,肯定要好得多:)

要填充,您需要编写一个存储过程/初始化实用程序。

既然已经有了座位的数值数组,那么如何调整该数组使其看起来像这样呢?

FRONT
0 0 3 3 3 0 0
0 3 3 3 3 3 0
1 2 2 2 2 2 1
1 1 1 1 1 1 1
BACK

…1、2和3分别代表铜牌、银牌和金牌。(我使用了你给出的相同的例子,并猜测哪些座位属于哪个类别)

希望对你有帮助。