当前位置: 代码迷 >> PB >> 向数据库insert失败,大家来帮帮啊该怎么处理
  详细解决方案

向数据库insert失败,大家来帮帮啊该怎么处理

热度:79   发布时间:2016-04-29 08:45:58.0
向数据库insert失败,大家来帮帮啊!
string lb_1,lb_2,lb_3,lb_4,lb_5
datetime lb_6,lb_7
lb_1='000000005'
lb_2='01'
lb_3='jy09'
lb_4='gp0901'
lb_5='mj0901'
lb_6=datetime(date('2011-5-11'),time('08:00:00'))
lb_7=datetime(date('2011-5-11'),time('08:00:00'))
Insert into "JM_JOBSCHDETAIL"
  ( josid,
josworkcen,
josworkcenter,
josbill,
cmj_bh,
josplstartdate,
josplenddate)
values (:lb_1,
:lb_2,
:lb_3,
:lb_4,
:lb_5,
:lb_6,
:lb_7)
using sqlca;
  if sqlca.sqlcode <> 0 then
  rollback;
  messagebox('插入记录失败',sqlca.sqlerrtext)
  else
  commit;
  messagebox('提示信息','新增记录成功!')
  end if

------解决方案--------------------
失败的提示是什么?
sqlca.sqlerrtext的值是什么?
------解决方案--------------------
楼主首先检查一下 表中字段类型是否与变量一致,再检查变量值是否正确

楼主的messagebox('插入记录失败',sqlca.sqlerrtext)是在rollback之后,当然没有信息了

为了检查出问题所在可以直接放在insert 语句后面

或者

C# code
string ls_errif sqlca.sqlcode <> 0 thenls_err=sqlca.sqlerrtext  rollback;  messagebox('插入记录失败',ls_err)  else  commit;  messagebox('提示信息','新增记录成功!')  end if
------解决方案--------------------
把那个 JM_JOBSCHDETAIL 建表语句我看一下
  相关解决方案