2017-07-23 3 views
0

enter image description herefehlschlagen, eine Datenbank-Tabelle aktualisieren vb.NET mit

Wenn ich versuche, meine databse Tabelle zu aktualisieren, was soll ich tun?

Warum erhalte ich diesen Fehler?

+0

Einige [ähnliche Fragen] (https://www.google.com/search?q=site:stackoverflow.com+visuelle+basische+oledbexception+war+unhandled+datatype+mismatch) –

+0

Concat nie Zeichenketten, um SQL zu machen . Dies ist nur eines von vielen Dingen, die passieren können. Verwenden Sie SQL-Parameter. Bitte lesen [fragen] und nehmen Sie die [Tour] – Plutonix

Antwort

0

es ist, weil nicht übereinstimmen Datentyp auf Ihre Spalten eingefügt Aktualisierungsabfrage ändern wie diese

update Hasil_Rml_Hallo_Bro SET Nilai_Error=" & Label3.text & " WHERE ID=" & label4.text 

entfernen zu sein, den „"“Apostroph Brief

1

Immer Parameter verwenden

Dim query As String = "update Hasil_Rml_Hallo_Bro SET Nilai_Error= @Error WHERE [email protected]" 
Using connection As New OleDbConnection(connectionString) 
    Using command As New OleDbCommand(query, connection) 
     Dim errorParameter As New OleDbParameter With 
     { 
      .ParameterName = "@Error", 
      .OleDbType = OleDbType.VarChar, // Or what is correct type in database 
      .Value = Label3.text 
     } 
     Dim idParameter As New OleDbParameter With 
     { 
      .ParameterName = "@Id", 
      .OleDbType = OleDbType.Integer, // Or what is correct type in database 
      .Value = Integer.Parse(label4.text) // Convert to correct type if needed 
     } 
     command.Parameters.Add(errorParameter, idParameter) 

     connection.Open() 
     command.ExecuteNonQuery() 
    End Using 
End Using 

Beachten Sie, dass Sie müssen den richtigen Typ für den Parameter eingeben - genauso wie den Spaltentyp, den Sie verwenden.

0

Stellen Sie sicher, dass Ihre Spalte in Ihrer Datenbank denselben Datentyp hat, den Sie einfügen.

Verwandte Themen