PDA

Ver la Versión Completa : Apertura de Varias Tablas


luxus
23-08-2005, 23:43:29
Hola a todos,
tengo una pequeña duda: quiero abrir varias tablas dentro de una misma base de datos y al abrir la segunda para su modificación me sale un error con el siguiente mensaje: "ERROR DE SINTAXIS EN LA CLAUSULA FROM".
¿Me podeis echar una mano? He depurado el codigo fuente varias veces y estoy seguro que el error se debe al ejecutar la instruccion

ADOTable2.Open

Suponemos que ADOConnection está conectado y funcionando y el ADOTable1.Open se ha ejecutado y sin problemas.

¿Hay una propiedad FROM a la hora de conectarse o al realizar la apertura de una tabla?
Gracias

Casimiro Notevi
24-08-2005, 12:34:32
Puédes poner el código de la sentencia? , imagino que el error no es el adotable2.open sino la sentencia que ejecuta para abrirla

luxus
24-08-2005, 21:41:57
Hola,
gracias por tu ayuda.

A continuación,muestro un ejemplo del procedimiento de lectura y escritura:

Supongamos que tenemos dos bases de datos con dos columnas: fila y columna. Lo que basicamente estoy haciendo es coger
información de la tabla de la primera base de datos (ADOConnection1) y lo quiero guardar en dos tablas (ADOTable2 y ADOTable3)
de la segunda base de datos (ADOConnection2);
La escritura de datos la realizo con un APPEND y POST.

ADOConnection1.Open;
ADOTable1.Open;

ADOTable1.Locate['columna','2',searchoptions);

aux:=ADOTable1.FieldValues['fila'];

ADOConnection2.Open;
ADOTable2.Open;
ADOTable2.Append;
ADOTable2.FieldValues['fila']:=aux;
ADOTable2.FieldValues['columna']:='2';
ADOTable2.Post;

*
ADOTable3.Open;
ADOTable3.Append;
ADOTable3.FieldValues['fila']:=aux;
ADOTable3.FieldValues['columna']:='3';
ADOTable3.Post;

El error es en * (se escribe en la primera table ADOTABLE2 y no llega a escribir en la tabla ADOTABLE3).
El cuadro de error que aparece es 'ERROR DE SINTAXIS EN LA CLAUSULA FROM'.

Te agradecería cualquier ayuda ya que me estoy volviendo loco y seguramente es un error de lo más tonto.
Gracias y Saludos.

Casimiro Notevi
25-08-2005, 00:04:21
siento no poder ayudarte con ese código, quizás otro compañero con conocimientos de ADO pueda ayudarte. Por lógica imagino que ese adotable3 no está definida correctamente, no?

Es que nunca he usado ADO :(

Neftali [Germán.Estévez]
08-09-2005, 13:33:18
En lugar de utilizar FieldValues, utiliza:


....FieldByName['fila'].AsInteger := ...


Y prueba.

NOTA: Siento la tardanza, pero he estado de vacaciones... ;-)

Sirkius
08-09-2005, 13:37:34
Tienes bien asignada la tabla del AdoTable3?? Por cierto, no será la misma que la tabla del 2?