problemas con ADO

caro
29 de Diciembre del 2004
hola. estoy haciendo un programa, pero al ejecutarlo me marca 2 errores, uno es la sintaxis de la clausula FROM y el otro en el método 'Refresh' del objeto 'IAdodc'

En esta parte es en donde me marca los errores:

ADOPersonal.RecordSource = "SELECT * FROM Personal" & "WHERE [NODEPTO]=" & vardepto
ADOPersonal.Refresh

espero puedan ayudarme xfa.

l_island
29 de Diciembre del 2004
A priori no sabría decirte donde está el problema, pero por apuntar algo estaría bien saber de que tipo es el campo NODEPTO, en caso de no ser numérico prueba esta otra forma de la SQL:

ADOPersonal.RecordSource = "SELECT * FROM Personal WHERE [NODEPTO]= '" & vardepto & "'"
ADOPersonal.Refresh

VarDepto quedará dentro de la SQL pero entre comillas simples.

Saludos!!
l_island

l_island
29 de Diciembre del 2004
Fijae en otra cosa, en tu SQL no dejas un espacio en blanco entre Presonal y WHERE de modo que te va a dar un error.

Saludos!!
l_island

ruben
29 de Diciembre del 2004
Hola a mi me pasa lo mismo con esta sentencia
Adodc1.RecordSource = "SELECT * FROM AIGUABLAVA WHERE ID = '4'"
por otro lado tu no sabrás como controlar un recordset para que me de el campo que yo estoy buscando para una tabla ya creada, en mi recordset tengo todos los campos de la tabla pero yo solo quiero comprobar uno...¿se te ocurre como lo puedo hacer?, GRACIAS

l_island
29 de Diciembre del 2004
Con respecto a la sentencia, ¿ID es un campo numerico?, si es así lo que tienes mal son la comillas simples, estas solo se utilizan para campos alfanuméricos (de tipo texto).
Si solo quieres un campo de la tabla con sustituir el * de la SQL por el nombre del campo es suficiente (espero haberte entendido)

Saludos!!
l_island

krizall
29 de Diciembre del 2004
hola caro, no se si ya resolviste tu problema pero supongo el error esta en la sql

ADOPersonal.RecordSource = "SELECT * FROM Personal" & "WHERE [NODEPTO]=" & vardepto

deberia de ser de este modo:

ADOPersonal.RecordSource = "SELECT * FROM Personal WHERE [NODEPTO]=' " & vardepto & " ' "

puse las comillas separadas para que se distingan, si tu campo NODEPTO es numerico quita la comilla simple y listo..

espero te sirva