Как вставить данные в MySQL и что означает исключение? - PullRequest
0 голосов
/ 03 октября 2018

Я использую следующий код для вставки данных в MySql, но когда я запускаю программу и нажимаю кнопку «Сохранить», появляется ошибка.Я думаю, что в моей колонке не написано неправильно, но я не знаю, почему она не работает?Пожалуйста, помогите мне, я застрял на этом

Private Sub btnsavetreatment_Click(sender As System.Object, e As System.EventArgs) Handles btnsavetreatment.Click
    MysqlConn = New MySqlConnection
    MysqlConn.ConnectionString =
        "server=localhost;userid=root;password=rico;database=god;"


    Try
        MysqlConn.Open()
        COMMAND.CommandText = "insert into god.treatmentrecord (Treatment_ID,Transaction_Date,ToothNo,Procedure,AmountCharge,AmountPaid,Balance) values (@treatmentid,@transactiondate,@toothno,@procedure,@amountcharged,@amountpaid,@balance)"
        COMMAND.Connection = MysqlConn
        COMMAND.CommandType = CommandType.Text
        COMMAND.Parameters.AddWithValue("@treatmentid", txttreatmentid.Text)
        COMMAND.Parameters.AddWithValue("@transactiondate", dtptransactiondate.Text)
        COMMAND.Parameters.AddWithValue("@toothno", txttoothno.Text)
        COMMAND.Parameters.AddWithValue("@procedure", txtprocedure.Text)
        COMMAND.Parameters.AddWithValue("@amountcharged", txtcharged.Text)
        COMMAND.Parameters.AddWithValue("@amountpaid", txtamountpaid.Text)
        COMMAND.Parameters.AddWithValue("@balance", txtbalance.Text)


        COMMAND.ExecuteNonQuery()
        MessageBox.Show("Data Saved")
        MysqlConn.Close()

    Catch ex As MySqlException
        MessageBox.Show(ex.Message)
    Finally
        MysqlConn.Dispose()
    End Try
End Sub

Тогда это сообщение об исключении

У вас есть ошибка в синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, для правильного синтаксиса, чтобы использовать близкие значения 'Procedure, AmountCharged, AmountPaid, Balance) (' 1 ',' среда, 3 октября 201 ') в строке 1

Пожалуйста, помогите мне

1 Ответ

0 голосов
/ 03 ноября 2018

Прежде всего, почему вы используете «god.treatmentrecord» вместо «treatmentrecord»?SQL может выдать ошибку, если не находит схему "бог".Обычно мы используем «dbo» как в «dbo.treatmentrecord» или просто без префикса схемы, в этом случае это будет только «treatmentrecord».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...