我尝试从c#项目连接到OracleDB。
SqlConnection thisConnection = new SqlConnection(
"Server=127.0.0.1:3306;Database=db1;User id=abc;Password=psw;");
在运行代码时会抛出一个exeption:
类型' System.Data.SqlClient.SqlException'的第一次机会异常。 发生在System.Data.dll中的网络相关或 建立连接时发生特定于实例的错误 SQL Server。服务器未找到或无法访问。校验 实例名称正确且SQL Server配置为 允许远程连接。 (提供者:SQL网络接口,错误:25 - 连接字符串无效)
我尝试连接本地mysql db并抛出相同的exeption 我可以使用Oracle SQL开发人员工具连接到服务器。
问题出在哪里?
答案 0 :(得分:2)
您正在使用SqlConnection(SQL Server)连接到Oracle数据库。请参阅以下有关如何连接到Oracle数据库的答案:
https://stackoverflow.com/a/12568350/2382032
正如弗林德伯格所指出的,这是NuGet链接:
答案 1 :(得分:1)
您正在使用SqlConnection
课程。此类用于连接到Microsoft的SQL Server
数据库。
由于您正在使用的数据库是Oracle的数据库,因此您需要一个Oracle' Oracle'具体的连接类。
您可以使用OracleDBConnection
类,但 不建议使用 。
相反,您可以使用提供的 ODP.NET &由Oracle支持。
希望这有帮助!!!
答案 2 :(得分:0)
您正在使用MS SQL服务器的连接器,请不要这样做。您应该在NuGet上获得Oracle Managed ODP.NET driver的唯一驱动程序。 Documentation is available here.
确保使用托管驱动程序,而不是非托管驱动程序。
使用它的例子:
var connection = new OracleConnection(str);
using (var command = new OracleCommand(commandStr, connection))
{
// do stuff with command
}
答案 3 :(得分:0)
尝试使用NuGet的ODP.Net驱动程序。
按照此处的说明进行操作:
link