C# oracle g10的C ODBC连接错误
我正在使用c odbc for OracleG10运行此代码时,它给我以下错误请帮助谢谢 错误位于行记录=cmd.ExecuteNonQueryC# oracle g10的C ODBC连接错误,c#,oracle10g,odbc,handleerror,C#,Oracle10g,Odbc,Handleerror,我正在使用c odbc for OracleG10运行此代码时,它给我以下错误请帮助谢谢 错误位于行记录=cmd.ExecuteNonQuery OdbcConnection connection = new OdbcConnection(); try { connection = new OdbcConnection(String.Format("DSN={0};Uid={1};Pwd={2};", txtDsn.Text, txtUse
OdbcConnection connection = new OdbcConnection();
try
{
connection = new OdbcConnection(String.Format("DSN={0};Uid={1};Pwd={2};", txtDsn.Text, txtUsername.Text, txtPassword.Text));
OdbcCommand cmd = new OdbcCommand();
cmd.CommandText = string.Format("call {0}.GETACCOUNT(?,?)", txtDB.Text);
cmd.Connection = connection;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Clear();
//stored procedure sql input paramaters.
OdbcParameter accountNumber = cmd.Parameters.Add("@ACCOUNTNUMBER", OdbcType.VarChar);
accountNumber.Direction = ParameterDirection.Input;
cmd.Parameters[0].Value = txtAccountNumber.Text;
//output parameters
OdbcParameter accountStatus = cmd.Parameters.Add("@ACCOUNT_STATUS", OdbcType.VarChar, 50);
accountStatus.Direction = ParameterDirection.Output;
try
{
if (!connection.State.Equals(ConnectionState.Open))
{
connection.Open();
}
}
int record = 0;
record = cmd.ExecuteNonQuery();
try
{
txtResult.AppendText(string.Format("Account Status: {0} {1}", accountStatus.Value, Environment.NewLine));
}
Catch(Exception ex
{
txtResult.AppendText(string.Format("Executing result Error{0} {1}{2}", ex.Message, ex.StackTrace, ex.Data));
}
}
catch (Exception ex)
{
txtResult.AppendText(string.Format("connection erorr {0} {1}", ex.Message, ex.StackTrace));
}
}
catch (Exception ex)
{
txtResult.AppendText((String.Format("retrive data fail: {0} {1}", ex.Message, ex.StackTrace)));
}
finally
{
connection.Close();
}
连接erorr
在System.Data.Odbc.OdbcConnection.HandleErrorOdbcHandle hrHandle中,RetCode RetCode
位于System.Data.Odbc.OdbcCommand.ExecuteReaderObjectCommandBehavior,String方法,Boolean needReader,Object[]methodArguments,SQL\U API odbcApiMethod
位于System.Data.Odbc.OdbcCommand.ExecuteReaderObjectCommandBehavior,String方法,布尔needReader
在System.Data.Odbc.OdbcCommand.ExecuteNonQuery中,输入两条注释;1如果出现连接错误,是否尝试了其他连接字符串?看见此外,您可能希望尝试特定于Oracle的.Net数据提供程序,这种类型的DSN适用于系统DSN。机器上是否设置了系统DSN,通过时名称是否正确。是的,系统DSN已设置,并且连接良好。调用cmd.ExecuteNonQuery时出错。