如何在SQL中存储多个值?

时间:2017-11-06 14:02:59

标签: mysql sql

我有一张存放书籍的桌子:

CREATE TABLE `Books` (
  `book_id` int(250) NOT NULL,
  `book_name` varchar(100) NOT NULL,
  `book_author` varchar(10) NOT NULL,
  `book_genre` varchar(100) NOT NULL,
  `book_floor` int(5) NOT NULL,
  `book_shelf` int(255) NOT NULL,
  `book_amount` int(255) NOT NULL,
  `book_available` int(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

我想写一个用户表,这些用户会有一个他们借来的书籍列,所以它必须从Books表中存储有关该书的所有信息,并且应该可以存储多本书。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:2)

使用可以链接borrowed booksbooks

的第三个表users

答案 1 :(得分:0)

用户和图书之间存在多对多的关系。你不能只用这两个表来做到这一点。你需要一个'UserBooks'表。该表将包含一个主键,其中包含user_id和book_id。

所以基本上,对于用户借来的每本书,你都会在这个表中有一行将用户的id映射到book id。