我對MySQL的行爲有個疑問。MySQL替換成具有唯一約束的行爲
想象一下表3(相關)列:
id (PK + AI),somedate,someuser,etc...
我已經穿上了(日期,用戶)的唯一約束。所以,當我開始用乾淨的測試表,並兩次運行下面的查詢:
REPLACE INTO `testtable` (somedate,someuser) VALUES('2017-01-01','admin');
我期待與「ID」列一排1.而是每次我運行此查詢的ID去,因爲向上自動增量,我不能發生這種情況(這會破壞我的數據關係)。爲什麼是這樣?我能否做到這一點,以便在發生替換時保留原始主鍵?
顯示此表的REAL模式 – RiggsFolly
爲什麼不使用'update'? –
@PrabhatG因爲我想快速和骯髒;)嚴肅地說:我只是偶然發現了這種行爲,我想更好地理解它。 – jwebdev