加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux – erlang odbc:如何禁用oracle的autocommit

发布时间:2020-12-25 01:04:02 所属栏目:Linux 来源:网络整理
导读:我需要在 Linux中使用erlang odbc模块禁用oracle的autocommit. 我创建了与代码的连接: {ok,Con} = odbc:connect("DSN=MyDSN",[{auto_commit,off},{scrollable_cursors,off}]). 连接已成功创建.当我尝试更新表时,请求是成功的,但它是自动提交的.我究竟做错了

我需要在 Linux中使用erlang odbc模块禁用oracle的autocommit.
我创建了与代码的连接:

{ok,Con} = odbc:connect("DSN=MyDSN",[{auto_commit,off},{scrollable_cursors,off}]).

连接已成功创建.当我尝试更新表时,请求是成功的,但它是自动提交的.我究竟做错了什么?

解决方法

好,朋友们.我自己解决了这个问题.正如我之前在评论中所述,问题是Linux的Oracle ODBC驱动程序在创建连接之前忽略了在驱动程序初始化期间设置自动提交模式.并且在已经创建了连接之后,正确设置自动提交模式.

我为erlang odbc模块创建了一个C源代码修复程序,现在它的工作正常.您可以在这里获取Erlang OTP的补丁 – https://github.com/RubberCthulhu/erlang-odbc-oracle-fix.

更新:这个消息是迟来的,但是在这里告知可能是有用的.我对Oracle ODBC的修复已包含在Erlang / OTP中.因此,由于R16A问题不实际,如果您需要使用ODBC与Oracle,只需尝试最新版本的Erlang / OTP. R14B04-R15B02的补丁可在此处获取 – https://github.com/RubberCthulhu/erlang-odbc-oracle-fix.

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读