Ya te pregunté acerca de este tema, pero lo que me interesa saber es... ¿Cómo puedo introducir una restricción que afecte a varias tablas? ¿Es qué no existe el CREATE ASSERTION?
Respuesta de dfmarin
1
1
dfmarin, He usado Unix desde 1988, y comence con Linux en 1993, coordino...
Como dije inicialmente, no hay en este momento forma de hacer lo que deseas, porque el equipo de desarrollo de MySQL no pretende implementar TRIGGERs, y apenas hay planes para incorporar STORED PROCEDURES en un futuro cercano. Podrías sin embargo agregar algunas funciones al API de MySQL si quieres, y usarlas desde tu aplicación. El problema aquí es un problema de compatibilidad con los estándares. La mayoría de los RDBMS debería acogerse al estándar ANSI SQL92, pero incluso MySQL no lo hace, cada proveedor agrega sus propias sentencias SQL (como el ASSERTION) o funciones, que hacen más difícil la portabilidad entre una y otra. Cualquier proyecto que pretenda migrar de una Base de Datos a otra, debe tener esto en cuenta (en el diseño original), en MySQL se incluyen problemas como los que ya has mencionado, más FOREIGN KEYS, VIEWS, COMMITS, ROLLBACKS y otros, que posiblemente vas a tener. Compatibilidad [] http://mysql.com/documentation/mysql/bychapter/manual_Compatibility.html