MySQL避免在CurrentTimeStamp中重复输入

时间:2015-02-03 15:32:10

标签: mysql sql

当我尝试使用sql查询直接将大量行插入数据库时​​。

INSERT INTO `table1`(`id1`, `id2`, `id3`) 
SELECT CURRENT_TIMESTAMP,id4, id5 FROM table2
  

重复录入' 2015-02-03 20:49:59'关键' PRIMARY'

这是因为两行尝试添加相同的时间戳作为其主键。在java中,我们可以通过维护变量来检查唯一性。如何在直接插入mysql数据库时确保这种唯一性

1 个答案:

答案 0 :(得分:3)

Timestamp / DateTime永远不应该用于任何主键,第一个问题是你可以在第二个时间内插入多个记录,导致重复的主键。

使用主键自动增量和整数,然后创建时间戳/日期时间并在列上创建索引。