【发布时间】:2016-09-09 22:31:39
【问题描述】:
这是我正在使用的场景:我有一个 ResultSet 对象,它正在使用我的 SQL 数据库中的某个表。我正在从事的项目非常大,我已经跟踪了 SQL Statements,它们应该被关闭。
但是,当我尝试在有问题的特定表上执行 Statement 时,我收到以下错误:
SQLException caught in Error Executing SQL statement :Operation 'ALTER TABLE' cannot be performed on object 'CONNECTIONS' because there is an open ResultSet dependent on that object.
在我查询表检查之前有什么方法可以确定 如果ResultSet/Statement 对象正在使用有问题的表,在这种情况下是表“CONNECTIONS”,然后使用java.sql 中的可用对象获取ResultSet/Statement 对象并关闭它我可以执行我的声明吗?
【问题讨论】:
-
您是否可以访问整个项目的源代码?在这种情况下,进行大量搜索以查找字符串“连接”是否有用?
-
从来没有任何硬编码的“连接”语句可以改变。例如,在尝试为它更改表时,另一个名为“INPUTS”的表上可能会出现同样的问题。如果这有意义吗? @LittleSanti