Me explico como lo hice para que le pueda servir a otros, porque de eso se tratan los foros:
Bien, yo estoy utilizándo el (IB Expert) un software muy bueno y que tiene una versión libre con pocas limitaciones.
Tengo dos tablas una Maestra y una detalles.
Creo una llave primaria (primary key) en maestra, y voy a la tabla detalles y en las restrinciones creo una llave foránea (foreing key) sobre el campo llave y que hace referencia al campo llave de la tabla maestra, luego aparecen las opciones de como responder ante una modificación o una eliminación del campo llave de la tabla maestra, particularmente yo escogí para modificación (cascade) donde el SGBD me modifica automáticamente el campo llave de la tabla esclava manteniendo la intedridad, y en eliminar escogí (no action) que evita la posibilidad de que el usuario elimine un record de la tabla maestra si tiene dependencias en la tabla esclava.
en IB Expert todo esto es visual y muy fácil y además te va poniendo el código SQL que se va generando.
CODIGO SQL:
Para crear la llave primaria en la tabla maestra:
ALTER TABLE MAESTRA ADD CONSTRAINT PK_MAESTRA PRIMARY KEY (CAMPO LLAVE);
Para crear el índice foráneo en la tabla esclava:
ALTER TABLE ESCLAVA ADD CONSTRAINT FK_ESCLAVA_1 FOREIGN KEY (LLAVE DE ESCLAVA) REFERENCES MAESTRA (LLAVE DE MAESTRA) ON UPDATE CASCADE;
Ya lo he probado y funciona de maravila.
Gracias a todos y a los principiantes como yó les recomiendo que utilicen el IB Expert que nos permite hacerlo todo visualmente e ir aprendiendo SQL.
__________________
Saludos
Seara2005
|