美好的一天!ASP.NET MySQL未定義參數
我有一個代碼插入,但從來沒有更新。我得到的錯誤是Parameter '@id_number' must be defined
。
我的代碼:
string query = "INSERT INTO pupil (`fname`, `lname`, `mi`) VALUES (@fn, @ln, @mi)";
MySqlCommand com = new MySqlCommand(query, connection);
com.Parameters.AddWithValue("@fn", txtAddFName.Text);
com.Parameters.AddWithValue("@ln", txtAddLName.Text);
com.Parameters.AddWithValue("@mi", txtAddMI.Text);
com.ExecuteNonQuery();
//create ID number
long lastID = com.LastInsertedId;
int length = 4;
string currentYear = DateTime.Now.Year.ToString("yy");
string result = lastID.ToString().PadLeft(length, '0');
string id_number = currentYear + "-" + result ;
string updateIDNumber = "UPDATE pupil SET [email protected]_number WHERE [email protected]_id";
MySqlCommand IDcom = new MySqlCommand(updateIDNumber, connection);
com.Parameters.AddWithValue("@id_number", id_number);
com.Parameters.AddWithValue("@pupil_id", lastID);
IDcom.ExecuteNonQuery();
的插入代碼的工作,但更新不。我想要做的是獲取最後插入的ID並將其更新爲id_number
,其中當前年份的最後兩位數字+最後一次插入的ID與4位前導0。例如,如果最後插入的ID是1,則lastID
變量的值將是16-0001。
的方式架構是這樣的:
pupil_id INT(11) AUTO_INCREMENT
fname VARCHAR(50)
lname VARCHAR(50)
mi VARCHAR(50)
id_number VARCHAR(255)
任何幫助將非常感激。
我想你打我吧.. – cableload
@cableload沒關係的,還是給你了:) – FewFlyBy
通過的球員的方式,它的工作原理,但我得到YY-0001,而不是或16-0001 – FewFlyBy