Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problemas con inserciones masivas (https://www.clubdelphi.com/foros/showthread.php?t=28311)

gusanita 15-12-2005 17:18:57

Problemas con inserciones masivas
 
Hola!!!

Tengo un problema espero puedan ayudarme, se trata de una insercion masiva de una base de datos a otra, estoy trabajando con delphi 5 y las bases de datos estan en acces, resulta que intento trasladar registros de una base de datos a otra, el siguiente es mi código:
Código Delphi [-]
 DataModuleBD.TBDBAJAS.TableName:=nombretabla.Text;
 DataModuleBD.TBAJDELAL.Active:=True;
 DataModuleBD.TBDBAJAS.Active:=True;
 DataModuleBD.Query.Close;
 DataModuleBD.Query.SQL.Clear;
 DataModuleBD.Query.SQL.Add('Insert InTo ":BDBECAS_BAJDEF:BAJDELAL"');
 DataModuleBD.Query.SQL.Add('(ALU_CTRL, BD_MTV, BD_PIN, BD_AIN, BD_SEM, BD_PTR, BD_ATR)');
 DataModuleBD.Query.SQL.Add('Select ALU_CTR, MBA_DES, ALU_PER, ALU_PAN, ALU_SEM, ALU_PET, ALU_PAT');
 DataModuleBD.Query.SQL.Add('From ":BDBAJDEF:'+nombretabla.Text+'"');
 DataModuleBD.Query.SQL.Add(';');
 DataModuleBD.Query.Open;
 DataModuleBD.TBAJDELAL.Active:=False;
 DataModuleBD.TBDBAJAS.Active:=False;
 showmessage('LA ACTUALIZACION DE LA TABLA FUE TODO UN EXITO');
  nombretabla.Text:='';
Y si hace la insersion, me pasa todos los resgistros, ya sean ma de 100, el problema es que en la ejecución me manda un mensaje :

ERROR CREATING CURSOR HANDLE

y pues ese es mi problema, no se como desaserme de ese error, porfavor espero me ayuden...

De ante mano gracias!!!!:)

vtdeleon 15-12-2005 17:28:21

Saludos
Bienvenido al Club, te recomiendo la lectura de la guia de estilo, asi como el uso de las etiquetas. Todo esto lo puede encontrar en mi firma;)

El error esta en esta linea
DataModuleBD.Query.Open;
Para Insercion, modificacion y eliminacion se debe usar ExecSql no Open, este ultimo solo para Select

gusanita 16-12-2005 06:40:37

Hola nuevamente!!!

Solo para agredecer, ya realicé la correción y funciona muy bien!!!
Graicas por la atención prestada!!!
Ahhh, y tambien por el otro consejo...

:) Gracias!!!


La franja horaria es GMT +2. Ahora son las 01:21:50.

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