Dim Query As String
Dim con As SqlConnection = New SqlConnection("Data Source=.\SQLEXPRESS;Initial Catalog=Minimarket;Integrated Security=True")
Query = "INSERT INTO Barang(kode_bar,kode_kat,nama_bar,satuan, hbeli, hjual, stok, expired)VALUES("
Query = Query + txtkodebar.Text + ",'" + cmbkodekat.Text + "','" + txtnamabar.Text + "','" + txtsatuan.Text + "','" + txthbeli.Text + "','" + txthjual.Text + "','" + txtstok.Text + "','" + Format(dtpex.Text, "yyyy-MM-dd HH:mm:ss") + "'"
con.Open()
Dim cmd As SqlCommand = New SqlCommand(Query, con)
Dim i As Integer = cmd.ExecuteNonQuery()
If (i > 0) Then
MessageBox.Show("Data berhasil disimpan")
Else
MessageBox.Show("Data gagal disimpan")
End If
con.Close()
* Кто-нибудь может мне помочь? когда я нажимаю кнопку save, появляется ошибка неправильного синтаксиса рядом с ',' в cmd.executenonquery. что я должен делать сейчас? я упал отказаться: '(*ошибка команды * неправильный синтаксис рядом ',' *
** [ИСПОЛЬЗУЕТ ПАРАМЕТРИРОВАННЫЕ ВОПРОСЫ !!!] (http://bobby-tables.com/) ** Извинения за крик, но это так важно **, а не только для безопасности, но и для производительности , Параметрированные запросы правильно набраны и могут повторно использовать кэшированные планы. Нет никакой веской причины не использовать их. – GarethD
'Query = Query + txtkodebar.Text +", '"' вам не хватает кавычек вокруг 'txtkodebar.Text' – ElGavilan
Помимо вашей проблемы, этот код открыт для атак SQL Injection. Вы никогда не хотите брать текст пользователя и включать его непосредственно как встроенную строку. Вот статья, в которой объясняется проблема вашего кода: http://blogs.msdn.com/b/cdndevs/archive/2013/04/01/security-code-review-techniques-sql-injection-edition.aspx – CertifiedCrazy