2014-11-03 76 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