2014-11-03 78 views
0

我想限制mySql表列中的值以滿足規則,插入的新值必須大於任何現有值。由於我找不到UNIQUEAUTOINCREMENT約束,我想問一下,如果在mySql中有可能達到這樣的功能。列約束:只允許增長值

+0

您可以在插入前觸發觸發器。 – 2014-11-03 11:41:46

回答

1

您必須使用before insert觸發器來實現此功能。

MySQL支持檢查約束的語法,但它實際上並未實現邏輯。這留下觸發。

另外,如果您編輯問題並解釋列表代表什麼,可能會有其他選項。例如,對於id類型的列,可以使用autoincrement。如果它是某種累計總和,那麼或許存儲這些變化比存儲總數更有意義。

+0

謝謝。如果我正確理解AI,由於其+1增量(它不想通過通過'ALTER TABLE tbl AUTO_INCREMENT = 123'打AI偏移來破解它)而限制太大。必須有可能允許+ N增量。將該列作爲一系列數字,其中'next = last + N',其中'N> 0'。 – sharpener 2014-11-03 11:56:39