加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

违反了 UNIQUE KEY 约束 'UNQ_CusID_DetachPolicyID'

发布时间:2020-12-13 22:43:36 所属栏目:百科 来源:网络整理
导读:违反了 UNIQUE KEY 约束 'UNQ_CusID_DetachPolicyID'。不能在对象'dbo.CustomerAccount' 中插入重复键。 语句已终止。 警告: 聚合或其他 SET 操作消除了 Null 值。 我使用存储过程时, 在往数据库中添加值时,没有数据为 null 的校验 ( 可能有 =null 的校验

违反了 UNIQUE KEY 约束 'UNQ_CusID_DetachPolicyID'。不能在对象'dbo.CustomerAccount' 中插入重复键。 语句已终止。 警告: 聚合或其他 SET 操作消除了 Null 值。


我使用存储过程时,在往数据库中添加值时,没有数据为null的校验(可能有=null的校验,但是null不能用=)。并且数据库中已存在原先字段为null的值,再插入数据为null的值,就会出现错误。


原来的SQL语句:

if not exists(select * from CustomerAccount where PolicyNo=@PolicyNo and DetachPolicyID=@DetachPolicyID and CustomerID=@cusId)


因为@cusId为空,校验的时候,=号是不能校验出null值的。


修改后的SQL语句:

if not exists(select * from CustomerAccount where PolicyNo=@PolicyNo and DetachPolicyID=@DetachPolicyID and ((CustomerID=@cusId and ISNULL(@cusId,'')!='') or isnull(@cusId,'')=''))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读