【问题标题】:Can table be locked in oracle?表可以锁定在oracle中吗?
【发布时间】:2014-12-23 13:41:14
【问题描述】:

我正在开发一个网络应用程序,如果出现问题,必须向客户端发送有效的错误消息,如果表被锁定,我必须发送有关它的错误,可以在 oracle 数据库中锁定表吗?如果不能,我就不会实现这个功能。

【问题讨论】:

    标签: database oracle locking


    【解决方案1】:

    是的,表可以在 orcal 中锁定。如果两个进程尝试在表中写入(更新或插入)然后既不提交也不关闭连接。它将被锁定。

    您可以通过使用关闭自动提交的工具编辑或运行更新查询来复制它,并且不运行提交或回滚,当您尝试从不同的工具或代码访问同一个表时,您将被锁定。

    如果您有 TOAD,只需编辑表格行,不要保存。同时尝试使用您的代码更新该表。

    但是,您的应用程序锁定表的机会几乎为零,因为在您的连接关闭后您将遇到一些连接超时。但是有可能其他进程会锁定该表。

    【讨论】:

    • 这是错误的。并发更新或插入,将不会锁定,它们只会锁定涉及的。另外:该表将始终可供读取访问。 “表锁”和“行锁”有很大的区别
    • OP 正在寻找任何类型的锁。如果行锁定,他也必须向用户发送错误消息。
    猜你喜欢
    • 1970-01-01
    • 2021-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    相关资源
    最近更新 更多