初学问题:不使用datawindow如何更新表中属性的值?

hifrog 2004-03-14 12:00:05
我有一个表book,想使用sql更新status属性:

update book set book.status="已借出" where book.bookno=:s_bookno using sqlca;
commit;

但是不管用。使用datawindows时可以设置update properties,但是对于没有使用数据窗口的表应该怎么办呢?

请各位兄弟help!
...全文
56 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hifrog 2004-03-16
  • 打赏
  • 举报
回复
s_bookno 值不为空啊,前面有一句insert插入了一个row就用到了s_bookno,而且操作正确。

关键是不用数据窗口如何更新表,而且建立了一个有两个表相关联的数据窗口,如何能让这两个表都能够更新?然而update properties只能对一个数据窗口设置一个能够更新的表:(
mittee 2004-03-15
  • 打赏
  • 举报
回复
update book set book.status="已借出" where book.bookno=:s_bookno using sqlca;
commit
这个语句十分标准。
kingxx 2004-03-15
  • 打赏
  • 举报
回复
你的....where book.bookno=:s_bookno 这里没有匹配的值,你查下sqlca.sqlNROWS看是否大于零呀!检查下:s_bookno 值是否为空?
hifrog 2004-03-15
  • 打赏
  • 举报
回复
sqlcode等于0,但是更新后值还是不变:(
autocommit改成true还是这样。
fulongbiao 2004-03-14
  • 打赏
  • 举报
回复
可以用数据窗口函数
hifrog 2004-03-14
  • 打赏
  • 举报
回复
那么如何多表更新,应该怎么写代码呢?
udb992002 2004-03-14
  • 打赏
  • 举报
回复
1、update book set status="已借出" where book.bookno=:s_bookno using sqlca;
commit;
2、用多表更新。不过要写的代码比较多。
jixiansudu 2004-03-14
  • 打赏
  • 举报
回复
楼主的语句做一下异常判断!
捕捉一下sqlca.sqlcode的值
多表更新的关键在于控制事务的一致性:要么都成功,要么都回滚
boolean lb_autocommit

lb_autocommit = sqlca.autocommit

sqlca.autocommit = false//保证不会马上提交更新表的操作
更新语句
sqlca.autocommit = lb_autocommit//别忘了
hifrog 2004-03-14
  • 打赏
  • 举报
回复
如果使用数据窗口的话,那么怎么让两个表的数据都能够更新呢?update properties中怎么才能够同时设置两个能够更新的表呢?

如果不用数据窗口有什么办法能更新表呢?
klbt 2004-03-14
  • 打赏
  • 举报
回复
多表更新一般指用数据窗口,数据窗口的数据源是两个以上表

1,075

社区成员

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

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