我正在尝试使用以下代码连接到oracle数据库。
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Oracle.ManagedDataAccess.Client;
using Oracle.ManagedDataAccess.Types;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
string connectionString =
"Data Source=a;User Id=id;Password=pwd;";
OracleConnection con = new OracleConnection(connectionString);
con.Open();
Console.WriteLine("Connected to Oracle Database {0}", con.ServerVersion);
con.Dispose();
Console.WriteLine("Press RETURN to exit.");
Console.ReadLine();
}
}
}
它的抛出异常说:
未处理的类型异常 ' Oracle.ManagedDataAccess.Client.OracleException'发生在 Oracle.ManagedDataAccess.dll
其他信息:ORA-12514:TNS:目前没有听众 知道连接描述符中请求的服务。
任何人都能纠正我上面代码出了什么问题吗?
答案 0 :(得分:0)
问题可能是连接字符串,如果您没有 TNS名称“a”已注册 你可以试试这个
string connectionString =
"Data Source=localhost:1521/xe;User Id=USERDB;Password=pwd";
默认情况下,XE是oracleservice的名称
数据来源 - > localhost:1521 / xe(ip:port / servicename)
用户ID - >你是Oracle用户
密码 - >你的Oracle密码