Equals sign and spaces and quotes, my friend. Equals sign and spaces and quotes...
str = "UPDATE [tblClientes] set Nombre = '" & txtNombre.Text & "', Apellido '" _
& txtApe.Text & "' , Seguro Social = '" & txtSS.Text & "', ZipCode = '" & txtZipCode.Text _
& "', Ciudad " & txtCiudad.Text & "', Telefono = '" & txtNumT.Text _
& " Where [NumId] = " & txtNumID.Text & ""
Becomes
str = "UPDATE [tblClientes] set Nombre = '" & txtNombre.Text & "', Apellido = '" _
& txtApe.Text & "' , [Seguro Social] = '" & txtSS.Text & "', ZipCode = '" & txtZipCode.Text _
& "', Ciudad ='" & txtCiudad.Text & "', Telefono = '" & txtNumT.Text _
& "' Where [NumId] = " & txtNumID.Text & ""
But don't do it like that!
Do not concatenate strings to build a SQL command. It leaves you wide open to accidental or deliberate SQL Injection attack which can destroy your entire database. Use Parametrized queries instead.
"Thanks can you refer me a link to learn how to Parametrized the queries instead? Thank You"
Simple (but a cut down version because I'm feeling lazy):
str = "UPDATE tblClientes SET Nombre = @NOM WHERE NumId=@NI"
Dim comando As OleDbCommand = New OleDbCommand(str, miConeccion)
commando.Parameters.AddWithValue("@NOM", txtNombre.Text)
commando.Parameters.AddWithValue("@NI" txtNumID.Text)
You can see that it is easier to read, and it means that I can't destroy your database by typing in the text boxes! :laugh:
Look at Parameters.AddWithValue on MSDN and it will explain more - there are versions for SqlCommand, MySQlCommand, OldbCommand, etc.