Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在特定行位置添加列_Mysql - Fatal编程技术网

Mysql 在特定行位置添加列

Mysql 在特定行位置添加列,mysql,Mysql,这只是一个简单的问题: 我有用户表,它有字段名称,地址和你买的书。你买的书是外键,它的值是其他表的PK。现在,在第一次插入之后,我将填写所有这些字段,但在第二次插入之后,我只想添加一个额外的books\u bunded,以便创建books\u bunded值数组 你这样做是错误的——这是一种关系,即许多书都是买给一个用户的。您需要将外键放在关系的多个方面,因此,不要将外键放在用户表上购买的图书上,而是将外键添加到用户表上购买的图书上 如果您有一个books表和一个users表,那么这是一种关系,

这只是一个简单的问题:


我有用户表,它有字段名称,地址和你买的书。你买的书是外键,它的值是其他表的PK。现在,在第一次插入之后,我将填写所有这些字段,但在第二次插入之后,我只想添加一个额外的books\u bunded,以便创建books\u bunded值数组

你这样做是错误的——这是一种关系,即许多书都是买给一个用户的。您需要将外键放在关系的多个方面,因此,不要将外键放在用户表上购买的图书上,而是将外键添加到用户表上购买的图书上


如果您有一个books表和一个users表,那么这是一种关系,您需要一个链接表来在它们之间传递外键。

在books\u Buyed单元格中不应该有多本书,因为这将违反数据库表的原子性约束。你买的每本书都必须有一个单独的条目。这将导致大量冗余信息,如姓名、地址等,会重复出现在特定人购买的每本书上

要解决此问题,必须将表拆分为以下内容: R1(主键、姓名、地址)和R2(外键、购书)
这里的外键是指R1的主键

糟糕的关系设计。应该有
用户表
图书表
销售表
。Sales shows user and book association作为“books Buyed”我正在考虑添加一个包含book id和user id字段的销售表,这样每次新购买都会记录在那里,当我需要有关用户购买的图书的信息时,我会在那里查看。这是更好的设计吗?是的,这是更好的设计。所以基本上你现在有三张桌子。您在问题中提到的表1(userid,bookid)、表2(userid,name,address)和表3是由您购买的书籍所引用的。我希望你明白了。我不太擅长解释事情P