当前位置: 代码迷 >> PB >> 向数据库insert失败,大伙儿来帮帮啊
  详细解决方案

向数据库insert失败,大伙儿来帮帮啊

热度:71   发布时间:2016-04-29 07:30: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 语句后面

或者

string ls_err
if sqlca.sqlcode <> 0 then
ls_err=sqlca.sqlerrtext
  rollback;
  messagebox('插入记录失败',ls_err)
  else
  commit;
  messagebox('提示信息','新增记录成功!')
  end if

------解决方案--------------------
把那个 JM_JOBSCHDETAIL  建表语句我看一下
  相关解决方案