Update stored procedure doesn't update, it keeps on saying info modification fails, please help
-
private void Update_Click(object sender, EventArgs e) { try { if (connect.State == ConnectionState.Open) { connect.Close(); } connect.Open(); SqlCommand cmd = connect.CreateCommand(); cmd = new SqlCommand("sp_UpdateDepartStaff", connect); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@StaffID", SqlDbType.Int).Value = logInIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@LogInID", SqlDbType.Int).Value = staffIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@StaffRoleID", SqlDbType.Int).Value = staffRoleIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@FirstName", SqlDbType.NVarChar).Value = firstNameTextBox.Text; cmd.Parameters.AddWithValue("@LastName", SqlDbType.NVarChar).Value = lastNameTextBox.Text; cmd.Parameters.AddWithValue("@UserName", SqlDbType.NVarChar).Value = userNameTextBox.Text; cmd.Parameters.AddWithValue("@Password", SqlDbType.NVarChar).Value = passwordTextBox.Text; cmd.Parameters.AddWithValue("@Email", SqlDbType.NVarChar).Value = emailTextBox.Text; cmd.Parameters.AddWithValue("@Phone", SqlDbType.NVarChar).Value = phoneTextBox.Text; cmd.Parameters.AddWithValue("@StaffRole", SqlDbType.NVarChar).Value = staffRoleTextBox.Text; cmd.Parameters.AddWithValue("@Department", SqlDbType.NVarChar).Value = departmentTextBox.Text; // cmd.Parameters.Add(new SqlParameter("@ProfilePic", SqlDbType.Image)); MemoryStream MemStream = new MemoryStream(); byte[] DataPic_Update = null; this.profilePicPictureBox.Image.Save(MemStream, ImageFormat.Png); DataPic_Update = MemStream.GetBuffer(); MemStream.Read(DataPic_Update, 0, DataPic_Update.Length); // image content SqlParameter photo = new SqlParameter("@profilePic", SqlDbType.Image); photo.Value = DataPic_Update; cmd.Parameters.Add(photo); int temp = 0; temp = cmd.ExecuteNonQuery(); if (temp > 0) { connect.Close(); MessageBox.Show("Your info upda
-
private void Update_Click(object sender, EventArgs e) { try { if (connect.State == ConnectionState.Open) { connect.Close(); } connect.Open(); SqlCommand cmd = connect.CreateCommand(); cmd = new SqlCommand("sp_UpdateDepartStaff", connect); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@StaffID", SqlDbType.Int).Value = logInIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@LogInID", SqlDbType.Int).Value = staffIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@StaffRoleID", SqlDbType.Int).Value = staffRoleIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@FirstName", SqlDbType.NVarChar).Value = firstNameTextBox.Text; cmd.Parameters.AddWithValue("@LastName", SqlDbType.NVarChar).Value = lastNameTextBox.Text; cmd.Parameters.AddWithValue("@UserName", SqlDbType.NVarChar).Value = userNameTextBox.Text; cmd.Parameters.AddWithValue("@Password", SqlDbType.NVarChar).Value = passwordTextBox.Text; cmd.Parameters.AddWithValue("@Email", SqlDbType.NVarChar).Value = emailTextBox.Text; cmd.Parameters.AddWithValue("@Phone", SqlDbType.NVarChar).Value = phoneTextBox.Text; cmd.Parameters.AddWithValue("@StaffRole", SqlDbType.NVarChar).Value = staffRoleTextBox.Text; cmd.Parameters.AddWithValue("@Department", SqlDbType.NVarChar).Value = departmentTextBox.Text; // cmd.Parameters.Add(new SqlParameter("@ProfilePic", SqlDbType.Image)); MemoryStream MemStream = new MemoryStream(); byte[] DataPic_Update = null; this.profilePicPictureBox.Image.Save(MemStream, ImageFormat.Png); DataPic_Update = MemStream.GetBuffer(); MemStream.Read(DataPic_Update, 0, DataPic_Update.Length); // image content SqlParameter photo = new SqlParameter("@profilePic", SqlDbType.Image); photo.Value = DataPic_Update; cmd.Parameters.Add(photo); int temp = 0; temp = cmd.ExecuteNonQuery(); if (temp > 0) { connect.Close(); MessageBox.Show("Your info upda
What value is returned in temp? Do you have the stored procedure code? A message that something didn't work is not very helpful - you need to debug to find any return messages or error codes
========================================================= I'm an optoholic - my glass is always half full of vodka. =========================================================
-
private void Update_Click(object sender, EventArgs e) { try { if (connect.State == ConnectionState.Open) { connect.Close(); } connect.Open(); SqlCommand cmd = connect.CreateCommand(); cmd = new SqlCommand("sp_UpdateDepartStaff", connect); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@StaffID", SqlDbType.Int).Value = logInIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@LogInID", SqlDbType.Int).Value = staffIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@StaffRoleID", SqlDbType.Int).Value = staffRoleIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@FirstName", SqlDbType.NVarChar).Value = firstNameTextBox.Text; cmd.Parameters.AddWithValue("@LastName", SqlDbType.NVarChar).Value = lastNameTextBox.Text; cmd.Parameters.AddWithValue("@UserName", SqlDbType.NVarChar).Value = userNameTextBox.Text; cmd.Parameters.AddWithValue("@Password", SqlDbType.NVarChar).Value = passwordTextBox.Text; cmd.Parameters.AddWithValue("@Email", SqlDbType.NVarChar).Value = emailTextBox.Text; cmd.Parameters.AddWithValue("@Phone", SqlDbType.NVarChar).Value = phoneTextBox.Text; cmd.Parameters.AddWithValue("@StaffRole", SqlDbType.NVarChar).Value = staffRoleTextBox.Text; cmd.Parameters.AddWithValue("@Department", SqlDbType.NVarChar).Value = departmentTextBox.Text; // cmd.Parameters.Add(new SqlParameter("@ProfilePic", SqlDbType.Image)); MemoryStream MemStream = new MemoryStream(); byte[] DataPic_Update = null; this.profilePicPictureBox.Image.Save(MemStream, ImageFormat.Png); DataPic_Update = MemStream.GetBuffer(); MemStream.Read(DataPic_Update, 0, DataPic_Update.Length); // image content SqlParameter photo = new SqlParameter("@profilePic", SqlDbType.Image); photo.Value = DataPic_Update; cmd.Parameters.Add(photo); int temp = 0; temp = cmd.ExecuteNonQuery(); if (temp > 0) { connect.Close(); MessageBox.Show("Your info upda
1. Your first 3 parameters are defined as integer but you are passing a string. 2. Why are you converting a
Textbox.Text
to string? e.gTextbox.Text.ToString()
Have you tried to run the stored procedure directly on the server with some dummy values? if so did it work sucessfully or did it throw an error?Every day, thousands of innocent plants are killed by vegetarians. Help end the violence EAT BACON
-
private void Update_Click(object sender, EventArgs e) { try { if (connect.State == ConnectionState.Open) { connect.Close(); } connect.Open(); SqlCommand cmd = connect.CreateCommand(); cmd = new SqlCommand("sp_UpdateDepartStaff", connect); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@StaffID", SqlDbType.Int).Value = logInIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@LogInID", SqlDbType.Int).Value = staffIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@StaffRoleID", SqlDbType.Int).Value = staffRoleIDTextBox.Text.ToString(); cmd.Parameters.AddWithValue("@FirstName", SqlDbType.NVarChar).Value = firstNameTextBox.Text; cmd.Parameters.AddWithValue("@LastName", SqlDbType.NVarChar).Value = lastNameTextBox.Text; cmd.Parameters.AddWithValue("@UserName", SqlDbType.NVarChar).Value = userNameTextBox.Text; cmd.Parameters.AddWithValue("@Password", SqlDbType.NVarChar).Value = passwordTextBox.Text; cmd.Parameters.AddWithValue("@Email", SqlDbType.NVarChar).Value = emailTextBox.Text; cmd.Parameters.AddWithValue("@Phone", SqlDbType.NVarChar).Value = phoneTextBox.Text; cmd.Parameters.AddWithValue("@StaffRole", SqlDbType.NVarChar).Value = staffRoleTextBox.Text; cmd.Parameters.AddWithValue("@Department", SqlDbType.NVarChar).Value = departmentTextBox.Text; // cmd.Parameters.Add(new SqlParameter("@ProfilePic", SqlDbType.Image)); MemoryStream MemStream = new MemoryStream(); byte[] DataPic_Update = null; this.profilePicPictureBox.Image.Save(MemStream, ImageFormat.Png); DataPic_Update = MemStream.GetBuffer(); MemStream.Read(DataPic_Update, 0, DataPic_Update.Length); // image content SqlParameter photo = new SqlParameter("@profilePic", SqlDbType.Image); photo.Value = DataPic_Update; cmd.Parameters.Add(photo); int temp = 0; temp = cmd.ExecuteNonQuery(); if (temp > 0) { connect.Close(); MessageBox.Show("Your info upda
The cmd.ExecuteNonQuery should return the number of rows affected by the command on UPDATE statement in this case if you are getting this message "Your info modification failed " means that for some reason the SP is not updating or is passing null values in the parameters could ya please share the content of the SP that way we can give a more precise solution.