Ошибка"необходимо объявить переменную @studentnr".как я могу ее решить?
Здравствуйте,у меня есть проблема в моей программе, когда я хочу вставить данные в БД.Это мой код.:
public void SaveData(object param) { string connstring = null; connstring = "Data Source=(LocalDB)\\MSSQLLocalDB;AttachDbFilename=C:\\Users\\user0909\\Documents\\AttendanceStudents.mdf;Integrated Security=True;Connect Timeout=30"; try { using (SqlConnection con = new SqlConnection(connstring)) { string sql = "Insert into RegisterStudent(SN,sNr,fName,lName,semester)Values(@sn,@studentNr,@fName,@lName,@semester)"; con.Open(); using (SqlCommand cmd = new SqlCommand(sql, con)) { cmd.Parameters.AddWithValue("@SN", SqlDbType.Int).Value = sn; cmd.Parameters.AddWithValue("@sNr", SqlDbType.Int).Value = studentNr; cmd.Parameters.AddWithValue("@fName", SqlDbType.NVarChar).Value = fName; cmd.Parameters.AddWithValue("@lName", SqlDbType.NVarChar).Value = lName; cmd.Parameters.AddWithValue("@semester", SqlDbType.Int).Value = semester; if(!string.IsNullOrEmpty(sql)) { cmd.CommandText = sql; cmd.ExecuteNonQuery(); } } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
Я вставляю все значения в текстовые поля,но получаю ошибку"
Must declare variable @studentNr"
Это мой стол.:
CREATE TABLE [dbo].[RegisterStudent] ( [SN] INT NOT NULL PRIMARY KEY, [sNr] INT NOT NULL, [fName] NVARCHAR(MAX) NOT NULL, [lName] NVARCHAR(MAX) NOT NULL, [semester] INT NULL )
Что я уже пробовал:
Это то, что я пробовал:
SqlParameter StudentNR = cmd.Parameters.AddWithValue("@sNr", SqlDbType.Int); cmd.Parameters["@sNr"].Value = studentNr; if (StudentNR.Value == null) { StudentNR.Value = DBNull.Value; }
Я пробовал этот подход,но все равно получаю ошибку?В чем может быть проблема?Заранее благодарю вас!