Syntaxfehler in der INSERT INTO-Anweisung von visual basic

ich weiß nicht, ob dies beantwortet wurde oder nicht aber ich habe problem mit einem Syntaxfehler in der insert into-Anweisung.
heres mein code, ich benutze visual basic 2010 und ms access 2010 als meine Datenbank

Imports System.Data.OleDb
Imports Comprehensive.Form1
Public Class Form2
Dim cnn As New OleDb.OleDbConnection
Private Sub RefreshData()
    If Not cnn.State = ConnectionState.Open Then
        cnn.Open()
    End If
    Dim da As New OleDb.OleDbDataAdapter("SELECT * FROM items ORDER BY ID", cnn)
    Dim dt As New DataTable
    da.Fill(dt)
    Form1.DataGridView1.DataSource = dt
    cnn.Close()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim cmd As New OleDbCommand
    Try
        If Not cnn.State = ConnectionState.Open Then
            cnn.Open()
        End If


        cmd.Connection = cnn
        cmd.CommandText = "INSERT INTO Items (Item_Name, Item_Type, Date_Added)" + "'VALUES('" & TextBox1.Text  & "','" & TextBox2.Text & "','" & TextBox3.Text & "');'"
        cmd.ExecuteNonQuery()
        RefreshData()
    Catch ex As Exception
        MessageBox.Show(ex.Message & " - " & ex.Source)
        cnn.Close()
    End Try



End Sub

Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    'TODO: This line of code loads data into the 'ShitdataDataSet.Items' table. You can move, or remove it, as needed.
    Me.ItemsTableAdapter.Fill(Me.ShitdataDataSet.Items)
    cnn = New OleDb.OleDbConnection
    cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=shitdata.mdb;"
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    Me.Close()
End Sub

Ende Klasse

  • Große SQL-injection problem, und es sollte keine ' WERTE vor und nach dem Ende ;.
  • Sie haben ein zusätzliches einzelnes Zitat, bevor Ihr VALUES - Klausel, und es sollte ein Raum zwischen dem schließen paranthesis in Ihre Liste der Spalte und die VALUES keyword, sowie eine zusätzliche single Zitat am Ende deiner Aussage.
  • Geben Sie mir parametrisierte SQL -, oder gib mir den Tod!!!
InformationsquelleAutor user3375678 | 2014-03-03
Schreibe einen Kommentar