Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-08-2005
luxus luxus is offline
Miembro
 
Registrado: oct 2004
Posts: 134
Poder: 20
luxus Va por buen camino
Trabajar con varias tablas

Hola a todos,
Estroy trabajando en una aplicación y necesito trabajar con varias tablas de dos bases de datos distintas. Al extaer información de una de las bases de datos y guardarlas en las distintas tablas de la segunda base de datos, me sale un error que dice "ERROR EN LA SINTAXIS DE LA CLAUSULA FROM".
Las bases de datos estan diseñados en ACCESS y utilizo componentes ADO. Curiosamente, NO estoy haciendo ninguna consulta SQL por lo que todavía no entiendo el origen de este error.
Os agradecería si me puedieseis echar una mano.
Un saludo y Gracias.
Responder Con Cita
  #2  
Antiguo 21-08-2005
Avatar de jmariano
jmariano jmariano is offline
Miembro
 
Registrado: jul 2005
Posts: 376
Poder: 19
jmariano Va por buen camino
¿Que componentes estás utilizando para acceder a las diferentes tablas? ¿TADOTable?, ¿Cómo estás guardando la información?

(Si detallas un poco mas como estás leyendo las tablas y guardando la información en las tablas de la otra base de datos, tal vez, podría ayudarte un poquito mas. De todas formas, y por el mensaje que te muestra, fíjate que ningún componente de acceso a datos esté haciendo un "SELECT" en la que involucre varias tablas de bases de datos distintas)
Responder Con Cita
  #3  
Antiguo 22-08-2005
luxus luxus is offline
Miembro
 
Registrado: oct 2004
Posts: 134
Poder: 20
luxus Va por buen camino
Acceso a segunda tabla

Hola,
gracias por tu ayuda. En respuesta a tus preguntas:
¿Que componentes estás utilizando para acceder a las diferentes tablas? ¿TADOTable?

- Efectivamente, estoy utilizando componentes ADOTable para cada una de las tablas de las dos bases de datos. Por tanto,
creo que alli no reside el error.

¿Cómo estás guardando la información?

- Básicamente, la lectura de los datos la estoy haciendo mediante un Locate en la tabla y con posterioridad guardo los
datos en variables locales.

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'.

Os agradecería cualquier ayuda ya que me estoy volviendo loco y seguramente es un error de lo más tonto.
Gracias y Saludos.
Responder Con Cita
  #4  
Antiguo 22-08-2005
Avatar de jmariano
jmariano jmariano is offline
Miembro
 
Registrado: jul 2005
Posts: 376
Poder: 19
jmariano Va por buen camino
En principio, tienes bien el código, así que lo único que se me ocurre es que revises bien las propiedades del componente ADOConnection2 (sobretodo que esté apuntando a la segunda base de datos) y de los dos componentes ADOTable2 y ADOTable3 (sobretodo que ambos estén enganchados al componente ADOConnection2).

(De todas formas, más tarde, me haré un mini-ejemplo haciendo una actualización como la tuya a ver si me da error también).

Siento no poder ayudarte mas!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 20:22:34.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi