【发布时间】:2017-09-08 08:51:52
【问题描述】:
我正在尝试通过提供用户名、密码、端口号、服务 ID 和主机名来登录我的远程 oracle 数据库!
private void button1_Click(object sender, EventArgs e)
{
connectionString = "Data Source = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.25.72.90)(PORT = 1521))) " +
" (CONNECT_DATA = (SERVER = SHARED) (SID = XE) )" +
" ); User Id =" + uname.Text + "; password=" + pword.Text;
OracleConnection con = new OracleConnection();
con.ConnectionString = connectionString;
con.Open();
OracleCommand cmd = new OracleCommand();
cmd.CommandText = "Select DEFINITION_ID from ATS_AME_DEFS";
cmd.Connection = con;
OracleDataReader dr = cmd.ExecuteReader();
dr.Read();
label1.Text = dr.GetString(0);
}
当我运行程序时,我在“con.Open();”处收到错误“Oracle.DataAccess.dll 中发生类型为 'Oracle.DataAccess.Client.OracleException' 的未处理异常”
但是当我将服务名称指定为 (SERVICE_NAME = ora12c) 替换服务 ID (SID = XE) 时,我可以访问数据库!我该如何纠正这个问题?
【问题讨论】:
标签: c# database oracle service numbers