更新查询永远卡住

时间:2020-05-02 05:29:16

标签: sql database oracle oracle-sqldeveloper rdbms

我正在针对oracle数据库服务器执行以下UPDATE sql查询-

UPDATE TEST.SS_USER_CREDENTIALS SET CREDENTIAL = 'UUHs4w4Nk45gHrSIHA==';

在Oracle SQL Developer中执行此查询后,我可以看到查询的执行状态微调框永远旋转,因此不返回任何输出。但是,在同一张表上执行SELECT查询后,立即返回结果-

 SELECT  * FROM TEST.SS_USER_CREDENTIALS;

能否请您帮助理解为什么不执行UPDATE查询?

4 个答案:

答案 0 :(得分:0)

尝试where子句

UPDATE TEST.SS_USER_CREDENTIALS SET CREDENTIAL = 'UUHs4w4Nk45gHrSIHA==' where id='someid';

我看到您的命令,如果表中有数万亿行,这将需要时间(因为我想这不应该是外键)

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

如果您正在寻找临时解决方案,还可以将ON UPDATE操作更改为CASCADE,并在遇到外键问题时修改ID

答案 1 :(得分:0)

如果未启用自动提交,则可能需要运行 提交;

否则,oracle更新实际上不会应用于您的数据集

答案 2 :(得分:0)

可能是您有另一个针对同一记录集的未提交的未提交事务,因此它们被锁定用于该事务。

如果您锁定了它们,则在另一个事务中运行相同的UPDATE。

只需提交/回滚您的交易

答案 3 :(得分:0)

这对我有用:

  1. 关闭数据库连接并刷新
  2. 刷新表格
  3. 在服务中重启 SQL Server

我知道这不是一个完整的答案,希望它有所帮助!