大哥们,救救兄弟我吧,我要疯了,快救我啊

huangcaoshop 2003-12-19 09:36:50
在PB中,新建一事务连接数据库,比如说是NEWYZ ,在用insert into ....时用 using newyz; 成功,newyz.sqlcode 返回0 , 改用 commit using newyz; 时不成功,返回-1,sqlerrtxt返回sql语句未成功结束,这是为什么????
另外,在用update 时,用using newyz;也成功,newyz.sqlcode 返回为0,但update时,其实是条根本没有的记录,它为什么会成功?而改为,commit using newyz; 就成了不成功,newyz.sqlcode 就返回-1,郁闷中
为什么 insert 时,用 using newyz;就可以正确返回状态,而在update 时,只有用commit using newyz;才能正确返回状态????
...全文
37 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
chrisfy 2003-12-19
  • 打赏
  • 举报
回复
不好意思贴错了
chrisfy 2003-12-19
  • 打赏
  • 举报
回复
if keydown(KeyControl!) then
if keydown(keyenter!) then
.......
end if
end if
wantsong 2003-12-19
  • 打赏
  • 举报
回复
你用的什么数据库?
access不支持事务
jdsnhan 2003-12-19
  • 打赏
  • 举报
回复
楼主 你的事物对象到底是 newy 还是newyz;

if "newyz".sqlcode = 0 then
commit using newyz;
else
rollback using newyz;
end if
是不是你不小心写错了。
huangcaoshop 2003-12-19
  • 打赏
  • 举报
回复
transaction newy
newy = CREATE transaction

newy.DBMS = f_read_regValue(gs_regkey + "\Database", 'DBMS')//"O73 ORACLE 7.3"
newy.LogPass = f_read_regValue(gs_regkey + "\Database", 'LogPass')//"yzv3"
newy.ServerName = f_read_regValue(gs_regkey + "\Database", 'ServerName')//"@tns:Seal4.world"
newy.LogId = f_read_regValue(gs_regkey + "\Database", 'LogId')//"yzv3"
newy.AutoCommit = False
newy.DBParm = f_read_regValue(gs_regkey + "\Database", 'DBParm')//"PBCatalogOwner='yzv3'"
newy.Database = f_read_regValue(gs_regkey + "\Database", 'Database')//"PBCatalogOwner='yzv3'"

Connect using newy;
IF newy.SQLcode <> 0 THEN
destroy newy
REturn -1000
END IF
INSERT INTO P01
( P0101,
P0102,
P0103,
P0104,
P0105,
P0106,
P0107,
P0108,
P0109,
P0110,
P0111,
P0113,
P0114,
P0115,
P0116)
VALUES ( '210221012215',
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null)
USING newy;
返回状态与
改为
commit USING newy;就不一样

还有一个update
UPDATE P04
SET P0402 = '' //旧章标志
WHERE P04.P0401 = '124312341324' USING newyz;返回状态与
改为
commit USING newy;就不一样


后语句为
if newyz.sqlcode = 0 then
commit using newyz;
else
rollback using newyz;
end if

jdsnhan 2003-12-19
  • 打赏
  • 举报
回复
贴出这个sql
workhand 2003-12-19
  • 打赏
  • 举报
回复
楼上分析的挺全,你要看各个事务的返回值,把代码贴出来看看先
molder 2003-12-19
  • 打赏
  • 举报
回复
要看你写SQL的上下文环境,有没有嵌套循环,有没有使用游标,仔细调试一下,跟踪SQLCA的各个属性值,看有没有其他属性出错的地方.
建议把你的整个SQL代码发出来
huangcaoshop 2003-12-19
  • 打赏
  • 举报
回复
没人 救我吗????

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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