此表格placeId, noOfGirls, noOfBoys.
由于某些更新查询,这两个字段noOfGirls and noOfBoys
的值变为negative.
有没有办法可以将这些negative
值转换为0
。意味着任何约束或其他东西,所以我可以保护它们是负面价值。
提前谢谢。
答案 0 :(得分:4)
最简单的方法是使用无符号整数类型:
CREATE TABLE foo(bar INTEGER UNSIGNED)
The MySQL "numeric types" documentation有更多关于这意味着什么的信息。
答案 1 :(得分:3)
将列声明为unsigned int
类型。
无符号范围是0到4294967295,因此该值永远不会变为负值。
您可以更改现有表格的架构
alter table table_name modify column noOfGirls int(10) unsigned;
您可以阅读更多here
答案 2 :(得分:1)
声明无符号zerofill工作,负值将转换为0.但您将收到以下警告 警告:#1264第1行的列'a1'超出范围值
其他方式:您可以创建触发器