Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Varios INSERT en la misma línea. (https://www.clubdelphi.com/foros/showthread.php?t=32760)

IPQ 15-06-2006 16:32:51

Varios INSERT en la misma línea.
 
Hola a todos,

Tengo un problemilla con una sentencia INSERT. Quiero realizar en la misma transacción varias inserciones, pero no me deja hacerlas.

La consulta SQL que yo introduzco es la siguiente:

INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('1',1,1),('2',1,1),('3',1,1),('4',1,1),('5',1,1),('6',1,1),('7',1,1),('8',1,1),('9',1,1),('10 ',1,1);

pero me da un problema con los valores a insertar.

¿Alguien tiene alguna solución? Y otra cosa no puedo mandar una transacción por cada INSERT porque el sistema agoniza

Gracias.

waltergomez 15-06-2006 20:17:02

No uso Interbase pero deberia ser algo asi .

Código SQL [-]
SET SUTOCOMMIT TO FALSE; ?????
SET TRANSACTION;
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('1',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('2',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('3',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('4',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('5',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('6',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('7',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('8',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('9',1,1)
INSERT INTO LOCK(ROOMNAME,ROOMTYPEID,HARDWAREID) VALUES('10 ',1,1)
COMMIT;

Paoti 15-06-2006 22:07:21

Hola IPQ, la solucion que te dice walter es la más acertada...



y si todas esas instrucciones las englobas en una sola trassación esta bien, no necesriamente tiene que ser una trassacion por cada insert.



puedes hacer un INSERT A PARTIR DE OTRA TABLA

Código SQL [-]
INSERT INTO TABLA_DESTINO 
    SELECT  FROM TABLA_ORIGEN


Asi puedes emular lo que tu deseas, claro, previamente haber inetrtado los datos en la tabla destino :rolleyes:



adios


La franja horaria es GMT +2. Ahora son las 22:00:18.

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