Por favor, alguien me puede ayudar con este error....

Jovi
22 de Junio del 2004
Error '3134' en tiempo de ejecuci贸n: Error de sintaxis en la instrucci贸n INSERT INTO, mi c贸digo es el siguiente:

Private Sub cmdgrabar_Click()
Dim insertar As Boolean
Dim op As String
If Trim(txtnombre) = "" Then Exit Sub
If abrirbd Then
SQL = ""
SQL = " select * from cliente where nombre = '" & txtnombre & "'"
Set rs = bd.OpenRecordset(SQL)
If rs.EOF Then
insertar = True
Else
insertar = False
End If
If insertar Then
SQL = ""
SQL = " insert into "
SQL = SQL + " cliente "
SQL = SQL + "( nombre, direccion, cod_ciudad, cod_gerente, contacto_1, cargo_1, contacto_2, cargo_2, contacto_3, cargo_3 )"
SQL = SQL + " values ( '" & txtnombre & "'"
SQL = SQL + ", '" & txtdir & "'"
SQL = SQL + ", " & cmbcodciudad.Text & ""
SQL = SQL + ", " & cmbcodgerente.Text & ""
SQL = SQL + ", '" & txtnom1 & "'"
SQL = SQL + ", '" & txtcargo1 & "'"
SQL = SQL + ", '" & txtnom2 & "'"
SQL = SQL + ", '" & txtcargo2 & "'"
SQL = SQL + ", '" & txtnom3 & "'"
SQL = SQL + ", '" & txtcargo3 & "')"
bd.Execute (SQL)
MsgBox ("La informaci贸n ha sido grabada...")
op = MsgBox("Desea ingresar otro", vbYesNo, "Ingreso")
If op = vbNo Then Exit Sub
limpiar
Else
SQL = ""
SQL = " update "
SQL = SQL + " cliente "
SQL = SQL + " set direccion = '" & txtdir & "'"
SQL = SQL + ", cod_ciudad = " & cmbcodciudad & ""
SQL = SQL + ", cod_gerente = " & cmbcodgerente & ""
SQL = SQL + ", contacto_1 = '" & txtnom1 & "'"
SQL = SQL + ", cargo_1 = '" & txtcargo1 & "'"
SQL = SQL + ", contacto_2 = '" & txtnom2 & "'"
SQL = SQL + ", cargo_2 ='" & txtcargo2 & "'"
SQL = SQL + ", contacto_3 = '" & txtnom3 & "'"
SQL = SQL + ", cargo_3 = '" & txtcargo3 & "'"
SQL = SQL + " where nombre = '" & txtnombre & "'"
bd.Execute (SQL)
MsgBox ("La informaci贸n ha sido actualizada...")
op = MsgBox("Desea modificar otro", vbYesNo, "Actualizaci贸n")
If op = vbNo Then Exit Sub
limpiar
End If
cerrarbd
End If
End Sub

krizall
22 de Junio del 2004
hola, asi a simple vista es un poquito dificil distnguir las comillas pero espero que te sirva esto que te voy a decir:
primero que nada sustituye el "+" por "&"
segundo:
para los campos string encierra todo entre comilla simple asi: ' " & valor & " '
disculpa los espacios pero sino los pongo no se ve bien

para los campos numericos por solo las comillas dobles..

espero que con esto resuelvas algo

Jovi
22 de Junio del 2004
Me resulto una vez, pero a la segunda me volvio a parecer el error, de todas maneras muchas gracias.....

kloss
22 de Junio del 2004
Deber铆as usar el excelente depurador de VB60 para poder dar con el error. Nosotros no sabemos si los campos son de texto o num茅ricos o de fecha..., por lo que no te podemos ayudar bien. Pero si consultas el valor de la variable SQL en depuraci贸n seguro que encontrar谩s el error f谩cilmente.

Para ello, una vez aparezca el error, pulsa en 'Depurar' y escribe en la ventana inferior ('Inmediato') de depuraci贸n del IDE lo siguiente:
?SQL
Te aparecer谩 la consulta completa generada y podr谩s inyectarla directamente en access o bien modificarla en tiempo de depuraci贸n en la misma ventanita, por ejemplo
SQL = "inset into...."
y despu茅s d谩rle al F5 para continuar otra vez a ver que tal

Jovi
22 de Junio del 2004
Chicos (a) creo que mi problema es cuando "NO" ingreso informaci贸n en alguno de mis TextBox, me arroja el Error '3134' que debo hacer en este caso..., ya que si ingreso todos los datos del formulario no tengo problema en que me guarde o actualize la informaci贸n, de antemano muchas gracias......