varios una tabla sintaxis registros otra into insertar ejemplos datos consultas sql mysql multiple-tables insert-into

una - select sql ejemplos



sql-insertar en varias tablas en una consulta (3)

MySQL no admite la inserción de varias tablas en una sola instrucción INSERT . Oracle es el único que yo sé que hace, extrañamente ...

INSERT INTO NAMES VALUES(...) INSERT INTO PHONES VALUES(...)

Suponiendo que tengo dos tablas, names y phones y quiero insertar datos de algunas entradas a las tablas, en una consulta: ¿cómo se puede hacer?

Por favor, si se puede hacer, explica la sintaxis.


No puedes. Sin embargo, PUEDE usar una transacción y tener ambos contenidos dentro de una transacción.

START TRANSACTION; INSERT INTO table1 VALUES (''1'',''2'',''3''); INSERT INTO table2 VALUES (''bob'',''smith''); COMMIT;

http://dev.mysql.com/doc/refman/5.1/en/commit.html


Yo tuve el mismo problema. Lo resuelvo con un bucle for.

Ejemplo:

Si quiero escribir en 2 tablas idénticas , usando un bucle

for x = 0 to 1 if x = 0 then TableToWrite = "Table1" if x = 1 then TableToWrite = "Table2" Sql = "INSERT INTO " & TableToWrite & " VALUES (''1'',''2'',''3'')" NEXT

ya sea

ArrTable = ("Table1", "Table2") for xArrTable = 0 to Ubound(ArrTable) Sql = "INSERT INTO " & ArrTable(xArrTable) & " VALUES (''1'',''2'',''3'')" NEXT

Si tiene una pequeña consulta, no sé si esta es la mejor solución, pero si su consulta es muy grande y está dentro de un script dinámico con condiciones if / else / case, esta es una buena solución.