【问题标题】:Oracle Connection with SQLAPI++使用 SQLAPI++ 的 Oracle 连接
【发布时间】:2022-08-03 16:43:05
【问题描述】:

我正在尝试使用 SQLAPI++ 将我的 c++ 代码与 oracle 连接,但它给了我错误 TNS:could not resolve the connect identifier specified

我的代码是这样的:

con.Connect( \"(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp) (HOST=192.168.1.XXX) (PORT=1521))(CONNECT_DATA = (SERVICE_NAME = SERVICE_NAME )))\", \"UsrName\", \"Password\", SA_Oracle_Client );

如果我只使用相同的代码但用户名和密码不等于这样:

con.Connect( \"(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp) (HOST=192.168.1.XXX) (PORT=1521))(CONNECT_DATA = (SERVICE_NAME = SERVICE_NAME )))\", \"\", \"\", SA_Oracle_Client );

编译器给了我一个ORA-01017: Invalid username / password; connection refused\\n 错误。

    标签: c++ oracle sqlapi++


    【解决方案1】:

    您可以尝试一下即时客户端语法:

    [//]host[:port][/service name]
    

    我已经成功地使用了 SQLAPI++。 您使用的字符串预计将出现在 tnsnames.ora 中,并且您通过所谓的 tnsname 引用此条目。如果您无法更改存储在您正在使用的 Oracle 安装中的 tnsnames.ora,那么您可以通过定义环境变量 TNS_ADMIN 来指示 Oracle API 从另一个位置获取文件。如果您自己的 tnsnames.ora 文件存在,请将其设置为一个目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-16
      • 2018-07-05
      • 2019-05-05
      • 2012-03-23
      • 2015-10-12
      • 2010-09-10
      • 2014-04-19
      相关资源
      最近更新 更多