mysql表有2個欄位a,b,當a=1,b=1時,這條記錄是唯一的。目前做法是程式保證唯一性,save or update時,必須先查詢判重。
我們知道,唯一性最好是在資料庫層面保證,但是這種特殊情況能通過觸發器什么的來保證嗎?
uj5u.com熱心網友回復:
觸發器中可以進行檢查。uj5u.com熱心網友回復:
用唯一索引不就行了么uj5u.com熱心網友回復:
可以用觸發器來實作。也可以試試用unique index,但是unique有個問題,就是兩列,但是這兩列中的任意一列,都可以是空的,也能唯一,所以要限制著2列為not null
uj5u.com熱心網友回復:
觸發器可以解決,不過應用還是會有些麻煩,因為需要處理更新失敗的情況你這種需求感覺真是挺怪異的,不知道是應用比較特殊還是設計的時候想歪了
uj5u.com熱心網友回復:
mysql表有2個欄位a,b,當a=1,b=1時,這條記錄是唯一的------------------------------------------------ 什么叫 a=1,b=1時,這條記錄是唯一的? 是其他值的時候不需要保證唯一?
uj5u.com熱心網友回復:
他應該說的是組合唯一吧 ,就是A,B兩個欄位組合唯一性
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/115324.html
標籤:MySQL
