使用php在sql中插入多个具有相同主键的行

时间:2013-11-29 14:32:28

标签: php mysql

想要插入具有相同主要内容的多个记录。 我尝试插入具有相同主键的多个记录,但sql给出错误“重复主键”。 可以插入带有id或主键的多行。?

4 个答案:

答案 0 :(得分:3)

主键的整个想法是为每一行都有一个唯一的标识符,所以你不能这样做。但是,如果您想要一种对行进行分组的方法,则可以向表中添加组列,也可以为分组创建表。例如group_members,它包含两列,“group_id”和“row_id”。

答案 1 :(得分:2)

主键旨在唯一

http://dev.mysql.com/doc/refman/5.5/en/optimizing-primary-keys.html

您可以拥有复合主键

CREATE TABLE track(
  album CHAR(10) NOT NULL,
  dsk INTEGER NOT NULL,
  posn INTEGER NOT NULL,
  song VARCHAR(255),
  PRIMARY KEY (album, dsk, posn)
)

当您想要防止表中多个数据库字段中出现重复数据时,复合唯一键非常有用。

http://www.alphadevx.com/a/382-Adding-a-composite-unique-key-to-an-existing-MySQL-table

答案 2 :(得分:0)

主键的用途是它是唯一的,不能重复。

http://www.w3schools.com/sql/sql_primarykey.asp

答案 3 :(得分:0)

主键应该是唯一的,这就是为什么MySQL会给你带来错误。

阅读有关主键的更多信息

SQL primary key