我想通过C#应用程序将一些数据插入Oracle数据库。
我一直得到一个如下所示的异常:“ConnectionString尚未正确初始化”。 插入的代码如下:
试 {
conn.openConnection();
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn.Connection;
cmd.CommandType = CommandType.Text;
String sqlCommand = "INSERT INTO ComandaDVD (Id_Comanda,Id_Format,Data_Comanda,Id_TipPlata,Pret) VALUES (" +
"'" + txt_idComanda.Text + "', " +
"'" + txtFormat.Text + "', " +
"to_date('" + txtData.Text + "', 'DD-MM-YYYY'), " +
"'" + txtIdTipPlata.Text + "', " +
"'" + txtPret.Text + "')";
cmd.CommandText = sqlCommand;
int result = cmd.ExecuteNonQuery();
if (result > 0)
{
MessageBox.Show("Comanda cu id_comanda[" + txt_idComanda.Text + "]a fost primita!");
}
else
{
MessageBox.Show("Eroare");
}
conn.closeConnection();
}
catch (Exception ex)
{
MessageBox.Show("Exceptie" + ex.Message);
}
}
我还制作了一个个性化的课程来简化连接处理: Conexiune_DB类 {
private OracleConnection conn;
private static string CONNECTION_STRING = "Data Source=80.96.123.131/ora09;User Id=hr;Password=oracletest;";
public Conexiune_DB() { conn = new OracleConnection(CONNECTION_STRING); }
public void openConnection() { conn.Open(); }
public void closeConnection() { conn.Dispose(); }
public OracleConnection Connection
{
get { return conn; }
}
}
该异常似乎是因为该类中的'conn.Open'。这很奇怪,因为我之前做了一些插入,我没有任何问题。
提前致谢。
答案 0 :(得分:0)
我确定会发生这种情况,因为您甚至在为其设置了ConnectionString之前就已经使用conn.openConnection();
打开了连接。因此,您应首先将ConnectionString设置为conn
,然后再打开它。我不确定您此刻想要使用哪些连接字符串,但如果它们相同,那么只需将conn.Conexiune_DB();
放在conn.openConnection();