Я пытаюсь обновить таблицу MSSQL с помощью SqlCommand, я думаю, что это ошибка синтаксиса с моей T-SQL, но вот то, что я до сих пор:C# Обновление таблицы с использованием SqlCommand.Parameters
SqlCommand sqlCmd = new SqlCommand("UPDATE yak_tickets SET email = @emailParam, subject = @subjectParam, text = @textParam, statusid = @statusIDParam, ticketClass = @ticketClassParam WHERE id = @ticketIDParam", sqlConn);
Параметры работают так, как должны, однако таблица никогда не обновляется при запуске кода. Любая помощь будет оценена =)
Вот остальная часть кода:
#region Parameters
/* Parameters */
sqlCmd.Parameters.Add("@ticketIDParam", SqlDbType.BigInt);
sqlCmd.Parameters["@ticketIDParam"].Value = ticketID;
sqlCmd.Parameters.Add("@emailParam", SqlDbType.NVarChar);
sqlCmd.Parameters["@emailParam"].Value = ticketToBeSubmitted.getEmail();
sqlCmd.Parameters.Add("@subjectParam", SqlDbType.NVarChar);
sqlCmd.Parameters["@subjectParam"].Value = ticketToBeSubmitted.getSubject();
sqlCmd.Parameters.Add("@textParam", SqlDbType.Text);
sqlCmd.Parameters["@textParam"].Value = ticketToBeSubmitted.getTicketContent();
sqlCmd.Parameters.Add("@statusIDParam", SqlDbType.NVarChar);
sqlCmd.Parameters["@statusIDParam"].Value = ticketToBeSubmitted.getStatus();
sqlCmd.Parameters.Add("@ticketClassParam", SqlDbType.NVarChar);
sqlCmd.Parameters["@ticketClassParam"].Value = ticketToBeSubmitted.getTicketClass();
#endregion
#region Try/Catch/Finally
/* Try/Catch/Finally */
try
{
sqlConn.Open();
sqlCmd.ExecuteNonQuery();
}
catch (SqlException sqlEx)
{
sqlErrorLabel.Text = sqlEx.ToString();
sqlErrorLabel.ForeColor = System.Drawing.Color.Red;
}
finally
{
sqlConn.Close();
}
И подпись метода:
public static void updateTicketInDatabase(Ticket ticketToBeSubmitted, Label sqlErrorLabel, int ticketID)
Возможно, это был глупый вопрос, но вы указали свою команду sql на свое соединение sql? sqlCommand.Connection = sqlConn; Обычно я делаю это в конструкции sqlCommand = new SqlCommand (sqlConn); Я бы подумал, что это вызовет ошибку, если вы этого не сделали. – GrayWizardx
Да, конструктор, который я использовал, имеет его в конце. – skylerl
Вы фактически используете поля NVArchar в своем db? или просто варчар? – GrayWizardx