DB2表被锁死,如何解锁

工作用的是DB2,在修改表结构,删除一个不用的字段的时候,yong发现再查询这个表发现报错,SQLState是57016,查询一下DB2的错误代码:因为表不活动,所以不能访问它(如果用的是DB2,尽量下载一份DB2的错误代码文档,对以后使用找问题非常有用)。
其实就是表被锁了,分析其实可能是DB2锁的机制,锁这方面我会找些东西补充学习一下。

我执行的删除字段的语句,修改表添加字段,删除字段和修改字段,千万别重新建表这样会把原先的数据搞没。
ALTER TABLE table_name ADD COLUMN column_name column_type;
表被锁了就要解锁,执行解锁语句:
reorg table 表名
注意这要在DB2的命令行执行,我在DB2Visual工具命令行执行没用,我最后是在Xshell连接数据库,然后再执行上面这个语句才解锁了这张表。要注意在Xshell下面执行DB2的SQL语句要执行要在前面加db2.

重要的事情说三遍,在Xshell下面执行db2的sql语句,不管是连接数据库还是查询更新要在SQL语句前面加db2加db2加db2.

猜你喜欢

转载自blog.csdn.net/feichangwurao/article/details/54071097