常见DB2 sql错误码积累

Posted on 2018-09-12 17:42  alavender  阅读(1254)  评论(0编辑  收藏  举报

DB2 SQL Error:

  • SQLCODE=-302, SQLSTATE=22001;原因:sql中要更新的某个字段的长度超过了数据库表中字段的定义长度。
  • SQLCODE=-407, SQLSTATE=23502;原因:把NULL值插入到定义为NOT NULL的列中。也就是违反了完整性约束异常
  • SQLCODE=-803, SQLSTATE=23505;原因:主键冲突,违反唯一性约束,若主键为自增id,使用insert 语句进行插入新的记录时,可以将自增id设为"DEFAULT"。

例:insert into HAIPERIOD (PROPERIODID, PROPERIODSTARTDATETIME, PROPERIODENDDATETIME, PROPERIODBAK1, PROPERIODBAK2)

    values (DEFAULT, #{PROPERIODSTARTDATETIME,jdbcType=VARCHAR}, 
      #{PROPERIODENDDATETIME,jdbcType=VARCHAR}, #{PROPERIODBAK1,jdbcType=VARCHAR}, #{PROPERIODBAK2,jdbcType=VARCHAR} )
  
  ...未完待续...