Sql检查约束?

时间:2014-03-11 20:31:31

标签: c# sql sql-server check-constraint

我正在使用SQL Server作为数据库进行C#app这是一个非常简单的问题,到目前为止我都找不到。我在QUANTITY列上创建了一个检查约束,如下所示:

QUANTITY >= 0

数量是从C#更新的,我不希望数量变得小于零但是当我的数量是2而我减去2时所以它应该允许零作为数量但不小于0但它会抛出以下例外:

  

UPDATE语句与CHECK约束冲突\" CK_ITEM_DETAILS_QUANTITY \"。冲突发生在数据库\" MyDatabase \",table \" dbo.ITEM_DETAILS \",列' QUANTITY'。\ r \ n该声明已被删除终止。

知道我做错了吗?

2 个答案:

答案 0 :(得分:1)

如果没有代码,就无法确定究竟出了什么问题,但有一件事是肯定的:您正在尝试编写条件QUANTITY >= 0不成立的值。你似乎错误地认为你不是,但是这个消息是明确的,并且在那个区域没有已知的错误。也许是一个浮点舍入问题?

答案 1 :(得分:1)

我解决了它,我只是将条件从QUANTITY >= 0更改为QUANTITY>0 OR QUANTITY=0,现在它开始正常工作了。 :)