Andreas322 Ответов: 1

У меня есть тот же код в 4 других различных формах обновления, но в этом случае ловится исключение, и я не могу понять, почему


MysqlConn = Новое Соединение MySqlConnection
MysqlConn.Параметр connectionString = "сервер=значение localhost;имя пользователя=корень;базы данных=stock_sales_system"
Команда = New MySqlCommand("UPDATE supplier SET SupplierName=@SupplierName, Address=@Address, Telephone=@Telephone, ContactPerson=@ContactPerson, StartDate=@StartDate, Description=@Description, WHERE SupplierName=@Name", MysqlConn)

Команда.Parameters.Add("@SupplierName", MySqlDbType.VarChar).Значение = txtSupplierName.Текст
Команда.Parameters.Add("@Address", MySqlDbType.VarChar).Значение = txtAddress.Текст
Команда.Parameters.Add("@Telephone", MySqlDbType.VarChar).Значение = txtTelephone.Текст
Команда.Параметры.Добавить("@Руководитель От Лвэ", MySqlDbType.Тип varchar).Значение = txtContactPerson.Текст
Команда.Parameters.Add("@StartDate", MySqlDbType.DateTime).Значение = dtpDate.Ценность
Команда.Parameters.Add("@Description", MySqlDbType.VarChar).Значение = txtDescription.Текст
Команда.Parameters.Add("@Name", MySqlDbType.VarChar).Значение = frmManageSuppliers.SupplierTableAdapter.Getsupplierame(frmViewSupplier.lblsupplierame.Text)

Попробуй
MysqlConn.Открыть()
Команда.Метод executenonquery()
Ящик для сообщений.Показать("информация о поставщике обновлена", "данные обновлены",
MessageBoxButtons.OK,
MessageBoxIcon.Информация)
MysqlConn.Close()
Поймать ex как исключение
Ящик для сообщений.Показать(напр.сообщение)
Окончательно
MysqlConn.Располагать()
Конец Попытки

Что я уже пробовал:

я получаю это исключение: "у вас есть ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MariaDB для правильного синтаксиса для использования рядом с 'WHERE SupplierName='Lordos" в строке 1

F-ES Sitecore

Это предположение, но у вас есть запятая перед WHERE, это может быть так же просто, как удалить ее

Описание=@Description, где SupplierName=@Name

к

Описание=@Description где SupplierName=@Name

phil.o

Это в основном правильный ответ :)

Andreas322

ха, я не заметил этой запятой.. большое вам спасибо я изо всех сил пытался найти ошибку

ZurdoDev

Для дальнейшего использования, ошибка сказала вам точно, где была проблема.

ZurdoDev

Опубликуйте как решение, пожалуйста.

1 Ответов

Рейтинг:
10

F-ES Sitecore

Это предположение, но у вас есть запятая перед WHERE, это может быть так же просто, как удалить ее

Description=@Description, WHERE SupplierName=@Name


к

Description=@Description WHERE SupplierName=@Name