¿Será posible insertar en dos tablas con el mismo comando de inserción?¿podemos insertar en dos tablas con una única instrucción sql?
Respuesta
No, no puede realizar múltiples inserciones en dos tablas en una consulta.
Tal vez en una versión futura de MySQL se puede crear una vista que contiene las tablas 2 y se insertan en eso.
Pero con MySQL 5.1.41 obtendrá el error:
"No se puede modificar más de una tabla de base mediante una vista conjunta"
Pero la inserción en 2 mesas con 1 consulta es una cosa extraña a do, y No lo recomiendo.
Para obtener más información sobre las vistas actualizables, consulte el MySQL reference.
Puede llamar a un procedimiento almacenado con inserciones en dos tablas.
La respuesta es sí y así es como lo haces. Es útil cuando tiene una latencia prolongada en su BD para combinar varias inserciones en una sola declaración. – Mark
No, no puedes.
Si desea garantizar la atomicidad de una operación que requiere datos a insertar en las tablas 2, debe protegerlo en una transacción. O bien usa las sentencias SQL BEGIN TRAN
y COMMIT TRAN
, o usa un límite de transacción en cualquier idioma que esté utilizando para desarrollar la capa de acceso db. P.ej. algo así como Connection.StartTransaction
y Connection.Commit
(o Connection.Rollback
en un error).
- 1. Insertar en dos tablas
- 2. Insertar SQL en tablas relacionadas
- 3. actualización SQL con dos tablas en Oracle
- 4. sql - insertar en varias tablas en una consulta
- 5. ¿Cómo unir dos tablas en una instrucción UPDATE?
- 6. Insertar valores en tablas Oracle SQL
- 7. ¿Cómo insertar en dos tablas diferentes en una declaración con Java y MySQL?
- 8. Combinar dos tablas en SQL Server 2008
- 9. SQL Insertar múltiples filas
- 10. instrucción SQL UPDATE para cambiar dos valores en dos filas
- 11. ¿Cómo puedo INSERTAR datos en dos tablas simultáneamente en SQL Server?
- 12. Yii validación única en dos columnas de tablas diferentes, es decir. validación única compuesta
- 13. Cómo insertar una matriz en una única declaración preparada de MySQL con PHP y PDO
- 14. Eliminar filas de varias tablas utilizando una única consulta (SQL Express 2005) con una condición WHERE
- 15. ¿Tiene DB2 una instrucción "insertar o actualizar"?
- 16. SQL: Seleccione columna similar de dos tablas
- 17. SQL: unión interna de dos tablas masivas
- 18. SQL une dos tablas sin claves/relaciones
- 19. SQL - Unir dos tablas y contar elementos
- 20. instrucción MySQL que devuelve una instrucción SQL?
- 21. SQL Server 2005 Restricción única en dos columnas
- 22. Insertar datos en tablas vinculadas por clave externa
- 23. SQL: INSERTAR EN ... VALORES..SELECCIONAR
- 24. insertar datos de una tabla a varias tablas
- 25. Consulta SQL para encontrar valores distintos en dos tablas?
- 26. unir dos tablas en una gran tabla
- 27. ¿Cómo combinar dos tablas en una consulta?
- 28. ¿Hay alguna forma de insertar a granel en dos tablas con FK de una a la otra?
- 29. SQL ¿Puedo tener una restricción "condicionalmente única" en una tabla?
- 30. ¿Cómo insertar una ID única en cada fila de SQLite?
No es raro que desee actualizar (o insertar en) varias tablas como parte de una sola atómica (es decir, de todo o nada sucede) operación. Cuanto más normalizada sea su base de datos, más probable será la necesidad. Solo necesita proteger las múltiples actualizaciones en una transacción de db. –
Es cierto, pero cuando veo una instrucción de inserción * simple, supongo que solo 1 tabla se ve afectada. La parte "extraña" se aplica al aspecto de consulta 1. –