数据库连接错误c# ->OracleDB

本文关键字:OracleDB 错误 数据库连接 | 更新日期: 2023-09-27 18:12:04

我尝试从c#项目连接到OracleDB .

SqlConnection thisConnection = new SqlConnection(
"Server=127.0.0.1:3306;Database=db1;User id=abc;Password=psw;");

在运行代码时抛出异常:

类型为'System.Data.SqlClient.SqlException'的第一次机会异常发生在System.Data.dll中
与网络相关的或在建立连接时发生特定于实例的错误SQL服务器。未找到服务器或无法访问服务器。验证实例名是否正确,SQL Server是否配置为允许远程连接。(provider: SQL Network Interfaces,错误:25-连接字符串无效)

我尝试连接本地mysql数据库,抛出相同的异常。
我可以用Oracle SQL开发工具连接到服务器。

问题在哪里

数据库连接错误c# ->OracleDB

您正在使用SqlConnection (SQL Server)连接到Oracle数据库。查看如何连接到Oracle数据库的答案:

https://stackoverflow.com/a/12568350/2382032

正如Flindeberg指出的,下面是NuGet的链接:

https://www.nuget.org/packages/odp.net.managed/

您正在使用SqlConnection类。这个类用于连接到Microsoft的SQL Server数据库。

因为你要使用的数据库是Oracle的数据库,所以你需要一个"Oracle"特定的连接类。

可以使使用OracleDBConnection类,尽管这是不可取的,因为它已被弃用

相反,您可以使用ODP。. NET提供&

希望这有帮助!!

您正在使用MS SQL服务器的连接器,不要这样做。您应该为Oracle Managed ODP使用的唯一驱动程序。NET驱动程序,您可以在NuGet中获得。文档在这里。

确保使用托管驱动程序,而不是非托管驱动程序。

使用示例:

var connection = new OracleConnection(str);
using (var command = new OracleCommand(commandStr, connection))
{
   // do stuff with command
}

尝试使用ODP。来自NuGet的Net Driver。


从c#

连接oracle