Oracle - Problema con un insert de varios registros

 
Vista:
sin imagen de perfil

Problema con un insert de varios registros

Publicado por Ali (2 intervenciones) el 26/05/2017 04:41:53
Hola que tal
Soy bastante principiante en Oracle y me encuentro intentando hacer un insert de varios registros en una sola instrucción, utilizo pl/sql Developer para esto, pero al ejecutar la instrucción tengo el error "ORA-00933 comando sql no terminado correctamente". El insert es en una sola tabla y son registros nuevos (no se encuentran en otra tabla dentro de la DB).

Tratando de insertar un solo registro no he tenido problema, el problema es cuando quiero insertar varios en una sola query.


Son 130 registros a insertar, así que solo pondré un ejemplo de la query con 5 registros
1
2
3
4
5
Insert into tts.TTS_RNU_MAIL_USER(C_CUENTA,D_MAIL)Values('TAMMON','correoejemplo@gmail.com'),
('TAMMON','otrocorreoejemplo@gmail.com'),
('TAMMON','otrocorreo@gmail.com'),
('TAMMON','otrocorreo@gmail.com'),
('TAMMON','otrocorreo@gmail.com');

Quizá la solución sea muy sencilla o sea un error de sintaxis, pero no consigo verlo. Agradecería mucho su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder
sin imagen de perfil

Problema con un insert de varios registros

Publicado por Alicia (2 intervenciones) el 26/05/2017 16:34:30
He encontrado la solución a mi problema y era exactamente, cuestión de sintaxis.
En Oracle para hacer un insert masivo en una sola sentencia es así:

1
2
3
4
5
6
INSERT ALL
	INTO NOMBRETABLA (COLUMNA1,COLUMNA2) VALUES ('DATO','DATO')
	INTO NOMBRETABLA (COLUMNA1,COLUMNA2) VALUES ('DATO','DATO')
	INTO NOMBRETABLA (COLUMNA1,COLUMNA2) VALUES ('DATO','DATO')
	INTO NOMBRETABLA (COLUMNA1,COLUMNA2) VALUES ('DATO','DATO')
SELECT * FROM dual

Espero le sirva de ayuda a alguien tan novato como yo.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con un insert de varios registros

Publicado por Monica (1 intervención) el 04/11/2018 01:11:48
MUCHISIMAS GRACIASSSSS, tenia el mismo problema pense que la sintaxis era como en mysql.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con un insert de varios registros

Publicado por Vico (1 intervención) el 16/05/2019 21:17:59
Muchas gracias, era justo lo que estaba buscando!! :D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con un insert de varios registros

Publicado por tomas gonzalez zingales (1 intervención) el 07/10/2019 18:30:29
cauntos usas como maximo ? 500 ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con un insert de varios registros

Publicado por Wilson (1 intervención) el 22/07/2020 17:35:27
Qué chiste tiene, para eso hago varios insert por separado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con un insert de varios registros

Publicado por Leopoldo (1 intervención) el 08/09/2021 10:29:15
No es lo mismo.
De la forma que él propone se ejecuta una única instrucción y no varias. Eso tiene grandes diferencias en cuanto a transacciones, triggers, etc.
Por ejemplo, si lo haces con una sola instrucción INSERT y hay algún dato erróneo, fallaría la instrucción completa y no se cambiaría el estado de la tabla, pero si usas varios INSERT puede que unos se ejecuten porque son correctos y otros no.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con un insert de varios registros

Publicado por GibbyAcolt (1 intervención) el 15/03/2021 03:35:53
Gracias amigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar