0

对不起我糟糕的英语。

我想使用“重复密钥更新”,但我不知道如何使用。

我的 MySQL 数据库是一样的:

id (primary key | autoincrement), id_hostel, date, allotement

我的 MySQL 查询:

insert into table (id_hostel, datebvj, allotement) VALUES
('1','09/05/2012','7'), ('1','10/05/2012','5'),
('1','11/05/2012','6')
ON DUPLICATE KEY UPDATE allotement=VALUES(allotement)

分配意味着房间

问题:即使数据库中已有数据,此查询也会进行插入查询。

我希望查询运行良好。

有什么建议吗?

非常感谢。

4

1 回答 1

1

仅当插入会导致创建重复记录时,“重复”才会转换为更新,其中重复意味着将违反唯一/主键索引。

鉴于您的表结构,您必须插入重复id字段才能触发转换。您的其他字段都没有唯一键,并且您的 insert 语句没有插入 id 值,因此无法触发 insert->update 开关。

于 2012-05-09T18:21:51.337 回答