Anwser corta:
1) name.Replace ("'" " ''") .... Reemplace los caracteres de escape que su base de datos puede tener (comillas simples, siendo el más común)
2) si está utilizando un lenguaje como .NET utilizan consultas parametrizadas
sql="Insert into Employees (Firstname, Lastname, City, State, Zip, Phone, Email) Values ('" & frmFirstname.text & "', '" & frmLastName & "', '" & frmCity & "', '" & frmState & "', '" & frmZip & "', '" & frmPhone & "', '" & frmEmail & "')"
lo anterior se reemplaza con el siguiente
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
3) almacenados por el usuario procsos
4) el uso de LINQ to SQL, de nuevo si está utilizando .NET
¡Gracias! Es bueno tener un fragmento de código de trabajo como respuesta. Me estaba quedando atrapado en el {0} en el texto de la consulta. – MikeJ