加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长百科 > 正文

unixODBC / Oracle:如何仅在连接字符串中指定所有数据源信息,而

发布时间:2021-03-06 14:08:41 所属栏目:站长百科 来源:网络整理
导读:我想使用unixODBC连接到Oracle(11g).我希望连接字符串仅指定所有数据库/数据源信息,并且ODBC INI文件(/etc/odbc.ini和/etc/odbcinst.ini)仅包含通用驱动程序信息,例如在何处查找’.所以’等等,即我希望它们是静态的.我想这样做,以便我可以从外部获取用户的连

我想使用unixODBC连接到Oracle(11g).我希望连接字符串仅指定所有数据库/数据源信息,并且ODBC INI文件(/etc/odbc.ini和/etc/odbcinst.ini)仅包含通用驱动程序信息,例如在何处查找’.所以’等等,即我希望它们是静态的.我想这样做,以便我可以从外部获取用户的连接字符串,并连接到数据源,而无需修改任何INI文件或任何其他磁盘配置.

我看到的所有示例都让我在/etc/odbc.ini中定义服务器信息,如下所示:

[myDSNname]
Driver = OracleODBC-11g
DSN = OracleODBC-11g
ServerName = //xxx.xxx.xxx.xxx:1521/SID_NAME
UserID = my_user
Password = my_pass

现在,我想通过在连接字符串中添加“UID = my_user; PWD = my_pass”来获取连接字符串中的UserID和密码,并将其从odbc.ini中删除.当我无法找到从odbc.ini获取ServerName并进入连接字符串的方式时,我的快乐很快就过去了.那我该怎么做?有没有办法完全摆脱odbc.ini中的DSN,并且在连接字符串中只有odbcinst.ini中的驱动程序,就像我们为MySQL做的那样?

编辑:
尝试从www.connectionstrings.com看起来似乎不需要TNS或DSN的任何连接字符串,包括EZCONNECT变体,都给了我:

[HY000] [unixODBC][Oracle][ODBC][Ora]ORA-12162: TNS:net service name is incorrectly specified
    (12162) (SQLDriverConnectW)

解决方法

只需使用Dbq = address:1521 / orcl,就可以得到你想要的东西

(编辑:衡阳站长网)

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

    热点阅读