php - 在mysql数据库中存储未知大小的数组

标签 php mysql database

嗨,我在 mysql 数据库中有一个日期时间值 (2015-01-01 12-54-32),我用它来知道图书馆订户预订一本书的日期,很容易在数据库中存储一个日期时间值,但是问题是我不知道订户将从图书馆预订多少本书可能是 1 也可能是 5 ,问题是我如何将它作为数组存储在数据库中?

最佳答案

将其存储在数据库中的正确方法是使用联结表。像这样:

create table BookReservations (
    BookReservationId int auto_increment primary key,
    SubscriberId int not null,
    BookId int not null,
    ReservationDate date not null,
    constraint fk_bookreservations_subscriberid foreign key (SubscriberId) references Subscribers(SubscriberId),
    constraint fk_bookreservations_bookid foreign key (BookId) references Books(BookId)
);

(显然,这只是建议问题中未提及的实体和列的名称。)

请注意,此表定义了表之间的外键关系以及存储数据。这允许数据库确保关系完整性。 MySQL(目前)不允许对字符串或 JSON 对象进行此类定义。

关于php - 在mysql数据库中存储未知大小的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34250879/

相关文章:

php - 无法在动态链接库 c :\wamp\bin\php\php5. 6.31\ext\phpcurl.dll 中找到 libssh2_scp_recv2

MySQL:连续时间内可用的时间跨度

php - 将数据插入2个表php

mysql - 我只得到那些需要我使用 MySQL 的列名 *

php - 无法在 php 的遍历预序中显示所有树

php - 如何使用 Shift-JIS 和 CP932 创建 SQL 注入(inject)攻击?

PHP 不将数据保存到数据库

javascript - Jquery 图像幻灯片放映不从头开始

sql - 在mysql中, "explain ..."总是安全的吗?

database - 更新 nedb 中的特定数组元素