【问题标题】:Openedge JDBC: Failure getting table lock on table PUB._FileOpenedge JDBC:在表 PUB._File 上获取表锁定失败
【发布时间】:2016-12-06 11:25:35
【问题描述】:

在我的应用程序中,我尝试向表中添加一列,我将使用该列作为唯一标识符来更新表的其他列。

为了做到这一点,我将表锁定为独占模式,然后添加新列 UNIQ_ID。尝试更改表格时出现以下错误。

更新查询:LOCK TABLE PUB."customer" IN EXCLUSIVE MODE

更新查询:ALTER TABLE PUB."customer" ADD(UNIQ_ID 整数)

java.sql.SQLException: [DataDirect][OpenEdge JDBC Driver][OpenEdge] 获取表 PUB._File 上的表锁定失败。

我在这里错过了什么?

【问题讨论】:

  • 其他一些事务持有 _File 表的锁。您需要提交或回滚该事务
  • 不要直接这样做。您可能无法正确添加所有相关字段和依赖项,因此只需使用进度工具即可。您可以随心所欲地从那里读取数据,但是在进行中写入元模式是一个非常糟糕的主意。请参阅下面 Tom 的回答,Tom Bascom 是 Progress 世界的关键人物。

标签: java jdbc openedge progress-db


【解决方案1】:

直接操作元模式是一个非常糟糕的主意,可能行不通。

您应该使用 Progress 提供的工具来添加表、列、索引等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-07
    • 1970-01-01
    • 2018-08-07
    • 2015-06-02
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    • 2019-10-25
    相关资源
    最近更新 更多