有没有办法在不复制记录的情况下将记录插入唯一字段。如果记录存在,我需要使用记录 ID 在另一个表中进行引用。我正在使用 php 和 mySql。
问问题
121 次
2 回答
0
例如,在 phpmyadmin 中添加一个类型为“INT”的名为“id”的列,并将其设置为“主键”和“自动增量”。
这样,您将拥有一个从 1 开始并为表中的每条新记录计数的唯一字段,然后您可以在其他表中引用它的值。
于 2012-05-01T16:18:39.397 回答
0
使用INSERT ... ON DUPLICATE KEY UPDATE
:
如果表包含一
AUTO_INCREMENT
列并INSERT ... ON DUPLICATE KEY UPDATE
插入或更新一行,则该LAST_INSERT_ID()
函数返回该AUTO_INCREMENT
值。例外:对于更新,LAST_INSERT_ID()
在 MySQL 5.1.12 之前没有意义。但是,您可以使用LAST_INSERT_ID(expr)
. 假设那id
是AUTO_INCREMENT
列。要使LAST_INSERT_ID()
更新有意义,请按如下方式插入行:INSERT INTO table (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id), c=3;
于 2012-05-01T16:33:01.853 回答