[英]Need a program that continously listens to the Oracle DB and if any DML's are made it calls another program?
[英]My DML queries are not affecting row in Oracle DB?
我有一个按预期工作的应用程序,我可以通过应用程序插入/更新行。 但是当我通过 SQL Developer 连接到我的 oracle 数据库并尝试运行 UPDATE 查询时,我收到一条消息,即更新了 1 行。 而该行未更新。
此外,我用来连接 oracle 数据库的用户对于 Application 和 SQL Developer 具有插入和更新权限是相同的。
我觉得在 oracle 数据库中实现了一个透明层,它阻止了直接查询的执行。 谁能知道这个功能是如何实现的或者配置了哪个 oracle 产品?
在 DML 之后,您必须commit
事务才能在数据库中进行实际更改。
如果没有commit
,您将在当前 session 中看到更改的数据,但其他会话将无法看到该更改。 或者您可以说,如果没有commit
,它实际上也没有在数据库中更改。
我对 Oracle 的经验是,大多数连接到 oracle 的 SQL 应用程序在运行 DML 时不会自动提交(对数据库记录进行永久更改)。 任何 DML 运行都应该跟在提交之后; 命令。 您可以在 SQL Developer 中打开自动提交功能,方法是转到菜单项工具 > 首选项 > 高级 > 如果您不想每次都运行该命令,则“检查”自动提交选项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.