Kurz anwser:
1) name.Replace ("'", " ''") .... Ersetzen Sie alle Escape-Zeichen, die Ihre Datenbank haben können (einfache Anführungszeichen sind die am häufigsten)
2) wenn Sie eine Sprache verwenden, wie .net parametrisierte Abfragen
sql="Insert into Employees (Firstname, Lastname, City, State, Zip, Phone, Email) Values ('" & frmFirstname.text & "', '" & frmLastName & "', '" & frmCity & "', '" & frmState & "', '" & frmZip & "', '" & frmPhone & "', '" & frmEmail & "')"
die oben wird mit der
Dim MySQL as string = "Insert into NewEmp (fname, LName, Address, City, State, Postalcode, Phone, Email) Values (@Firstname, @LastName, @Address, @City, @State, @Postalcode, @Phone, @Email)"
With cmd.Parameters:
.Add(New SQLParameter("@Firstname", frmFname.text))
.Add(New SQLParameter("@LastName", frmLname.text))
.Add(New SQLParameter("@Address", frmAddress.text))
.Add(New SQLParameter("@City", frmCity.text))
.Add(New SQLParameter("@state", frmState.text))
.Add(New SQLParameter("@Postalcode", frmPostalCode.Text))
.Add(New SQLParameter("@Phone", frmPhone.text))
.Add(New SQLParameter("@email", frmemail.text))
end with
unter
verwenden ersetzt
3) Benutzer Stored Procs
4) verwenden Linq to SQL, wieder, wenn Sie .net verwenden
Danke! Schön, funktionierendes Code-Snippet als Antwort zu bekommen. Ich bin im Abfragetext an der {0} hängengeblieben. – MikeJ