下面程序(动态游标)为什么不能正常执行(在线等待)

sjzjq 2003-10-20 09:28:18
下面得程序是我再pb8中写得,数据库是oracle,再程序中读取access库中得数据,其中access得表名是可变得,字段都一样,为什么再执行时总提示游标不能打开
transaction AjTranction
AjTranction=create transaction
AjTranction.DBMS = "ODBC"
AjTranction.DBParm = "Connectstring='DSN=sourse'"
connect using AjTranction;
if AjTranction.sqlcode <> 0 then
SetPointer(Arrow!)
MessageBox ("源数据库连接错误,请重新配置ODBC!", AjTranction.sqlerrtext,StopSign!)
disconnect using AjTranction ;
destroy AjTranction
return
end if
SQL= 'select sgbh from ' +named
DECLARE source_cursor DYNAMIC CURSOR FOR SQLSA;
PREPARE SQLSA FROM :sql USING ajtranction ;
OPEN DYNAMIC source_cursor;
fetch source_cursor into :ls_SGBH;
if ajtranction.sqlcode= -1 then
messagebox("Error","数据源中数据记录第"+string(li_row)+"行格式错误,请修正后再导入!"+ajtranction.sqlerrtext,StopSign!)
close source_cursor;
disconnect using AjTranction ;
destroy AjTranction
return
end if
...全文
57 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
psy2182_cn 2003-10-27
  • 打赏
  • 举报
回复
cursor not open ,then the declaration of cursor may be wrong! please check it carefully!
sjzjq 2003-10-21
  • 打赏
  • 举报
回复
sql语句正确,sqlerrtext 为cursor is not open
119119 2003-10-21
  • 打赏
  • 举报
回复
好像不支持。
xirumin 2003-10-21
  • 打赏
  • 举报
回复
access数据库支持游标吗?
jdsnhan 2003-10-21
  • 打赏
  • 举报
回复
既然提示游标没有打开,那问题就出在:
DECLARE source_cursor DYNAMIC CURSOR FOR SQLSA;
PREPARE SQLSA FROM :sql USING ajtranction ;
OPEN DYNAMIC source_cursor了;
还是要找sql、事物对象方面。
sjzjq 2003-10-20
  • 打赏
  • 举报
回复
问题是不能成功执行,关闭得代码我也写了,上面只是一部分,
workhand 2003-10-20
  • 打赏
  • 举报
回复
if ajtranction.sqlcode= -1 then
messagebox("Error","数据源中数据记录第"+string(li_row)+"行格式错误,请修正后再导入!"+ajtranction.sqlerrtext,StopSign!)
close source_cursor;
disconnect using AjTranction ;
destroy AjTranction
return
end if
close source_cursor;
destroy AjTranction
执行成功也要关掉阿
jdsnhan 2003-10-20
  • 打赏
  • 举报
回复
读出SQL= 的内容,再看看sqlerrtext的内容。

740

社区成员

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

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