我正嘗試在Visual Studio 2010 Ultimate中執行更新操作,Windows窗體作爲前端,Oracle 11g作爲後端表達。 我正在使用C#編寫代碼。錯誤更新查詢-Visual Studio 2010- Oracle 11g Express版
private void update_student(string STUDENT_ID, string STUDENT_NAME, string STUDENT_ADDRESS)
{
con.Open();
String sql = "UPDATE STUDENT SET STUDENT_NAME = :STUDENT_NAME, STUDENT_ADDRESS= :STUDENT_ADDRESS WHERE STUDENT_ID= :STUDENT_ID";
OracleCommand query = new OracleCommand(sql, con);
OracleParameter[] updatestud = new OracleParameter[3];
updatestud[0] = query.Parameters.Add("STUDENT_ID", OracleDbType.Varchar2, STUDENT_ID, ParameterDirection.Input);
updatestud[1] = query.Parameters.Add("STUDENT_NAME", OracleDbType.Varchar2, STUDENT_NAME, ParameterDirection.Input);
updatestud[2] = query.Parameters.Add("STUDENT_ADDRESS", OracleDbType.Varchar2, STUDENT_ADDRESS, ParameterDirection.Input);
query.ExecuteNonQuery();
MessageBox.Show("Row Updated");
con.Close();
}
執行插入和檢索操作後,我正在嘗試更新查詢。
我無法理解我在應用程序中使用的以下代碼的參數和值的流程。 我得到的query.ExecuteNonQuery();
線以下錯誤:
ORA-01722:無效數字
任何幫助將非常感激。
你確定你的Student_ID是一個字符串嗎? – nvoigt 2013-03-12 14:04:14
你的STUDENT_ID是什麼? – 2013-03-12 14:19:58