【发布时间】:2014-11-23 21:29:37
【问题描述】:
我正在执行一个 OracleConnection 来联系一个遥远的数据库,像这样:
OracleConnection conn = new OracleConnection("Data Source=(DESCRIPTION(ADDRESS_LIST=(PROTOCOL=TCP)(HOST=XX.XX.XX.XX)(PORT=XXXX)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XXXXX));User Id=XX_XXX_XXX; Password=XXXXXXXXXXX");
隐藏的所有信息都是正确的,并且与Oracle数据库相对应。
当我执行conn.Open(); 时出现错误:ORA-12514: TNS: 指定的连接标识符无法解析
我听说这可能是因为 tnsnames.ORA 我已经复制/粘贴了一位同事的 tnsnames.ORA 到我的,但没有任何改变。
我在很多论坛和网站上搜索过,似乎没有人得到我的答案。
提前感谢您的帮助。
您好,
弗洛。
编辑1:
在命令行上尝试了 SQLplus 连接后,它成功了。 Visual Studio 似乎是问题所在?
【问题讨论】:
-
监听器启动了吗?运行
lsnrctl status,请显示输出。 -
我猜你的意思是Oracle数据库的监听器?我无法访问它,但我可以打电话询问他们。我很快就会回来提供信息。谢谢。
-
您需要将此连接字符串添加到您机器上的 TNSnames.ora 文件中。
-
new OracleCollection你确定。不是new OracleConnection? -
是的,错过复制它是新的 OracleConnection。我在我的 TNSnames.ora 文件 @Rex 中添加了连接字符串
标签: c# sql oracle oracle11g tnsnames