微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何基于动态查询删除表中的记录?

如何解决如何基于动态查询删除表中的记录?

这个问题是this one的后续。

我目前有以下源代码

    CREATE BUFFER h-Table1 FOR TABLE "Table1" NO-ERROR.
    IF VALID-HANDLE(h-Table1)
    THEN DO:
             L-Found = h-Table1:FIND-FirsT("WHERE ...
             IF L-Found
             THEN h-Table1:BUFFER-DELETE().

当我启动 BUFFER-DELETE() 命令时,出现错误 335 (The Table1 record has NO-LOCK status. DELETE not allowed. (335))。我需要如何更改我的源代码才能使其正常工作? (如何更改 Table1 记录的状态?)

提前致谢

解决方法

h-Table1:FIND-FIRST ("WHERE ....",EXCLUSIVE-LOCK) . 

或在第一次查找之后(应该使用明确的 NO-LOCK 选项完成)

hTable1:FIND-CURRENT (EXCLUSIVE-LOCK) . 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。