连接两个数据库,oracle和sql 把信息互相转换,结果转换失败求指教代码是:运用了数据窗口

iqbutaixing 2016-04-27 11:10:41


下面是 复制按钮的代码:
int li_i//rowscopy 返回值变量
int li_j //dw_2 最后一行行号
int i//循环变量
boolean b_sqlcode = false
string id,classname,sex,ages


string wid[]//定义string数组或者dw_1上SAMPLENO列数据
int li_updata//updata 函数返回值 变量
li_j = dw_2.rowcount() //初始化li_j dw_2最后一行
int li_dw1
li_dw1 = dw_1.rowcount()
if li_j = 0 then //dw_2如果数据 就把第一行赋给他
li_j = 1
end if
for i = 1 to li_dw1//循环添加修改数据,如果sql数据库有sid主键数据 进行修改,如果没有主键数据sid 就进行添加
id = string(dw_1.object.id[i])
classname = string(dw_1.object.classname[i])
sex = string(dw_1.object.sex[i])
ages = string(dw_1.object.ages[i])
//sid = int(dw_1.object.sid[i])
//select sid into :sid from student where sid = :sid using sqlca;//查询SAMPLENO
//if sqlca.sqlcode = 0 then
// update sid set stuname = :sname,stusxe = :sxe,stuage = :sage where stuname = :sname using sqlca;
insert into classes values (:id,:classname,:sex,:ages) using sqlca;
if sqlca.sqlcode = 0 then
commit using sqlca;
b_sqlcode = true
else
rollback using sqlca;
b_sqlcode = false
end if
//end if

if sqlca.sqlcode = 100 then//如果没有 添加
li_i = dw_1.rowscopy( i,i,primary!,dw_2,li_j,primary!)
li_updata = dw_2.update()
if li_updata = 1 then
b_sqlcode = true
else
b_sqlcode = false
end if
dw_1.retrieve()
end if
next
if b_sqlcode = true then
Messagebox("提示","成功!")
else
MessageBox("提示","失败!")
end if

...全文
1623 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
WorldMobile 2016-05-10
  • 打赏
  • 举报
回复
在UPDATE后看一下sqlca.sqlerrtext,这里有错误信息,根据错误的信息去处理
iqbutaixing 2016-04-28
  • 打赏
  • 举报
回复
每次都是 你~好激动
iqbutaixing 2016-04-28
  • 打赏
  • 举报
回复
倒是没有出错 就是显示复制不成功~
WorldMobile 2016-04-27
  • 打赏
  • 举报
回复
兄弟,运行到哪行代码出错了?什么错误提示?

752

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧