Dolphin y foreign key

Post Reply
jgabri
Posts: 17
Joined: Mon Jan 14, 2019 11:43 am

Dolphin y foreign key

Post by jgabri »

Hola

Alguien tiene algún ejemplo, de como utilizar foreign key con dolphin ? estoy un poco perdido, he creado la clave en la tabla, pero no me acaba de funcionar.

Un saludo,
Gabriel

Harbour
Fwh 19.05
User avatar
cmsoft
Posts: 653
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: Dolphin y foreign key

Post by cmsoft »

Hola Gabriel:
Las Foreing Key te sirven para mantener la integridad referencial en las tablas, o incluso mantener de forma automatica la relacion en tablas cabecera-detalle.
Con Dolphin nos va a respetar las reglas que hayamos indicado en las foreing key, tales como no permitir borrar de una tabla maestra si asi lo indica la regla, o hacer un borrado en cascada, cuando lo indiquemos asi.
Ejemplo:
ALTER TABLE `clientes`
ADD FOREIGN KEY (`categoria`) REFERENCES `categorias`(`id`);
Esto hara que el campo categoria de la tabla clientes, no permita ingresar un valor que no este en la tabla categorias.
Otro ejemplo:
ALTER TABLE `clientes`
ADD FOREIGN KEY (`categoria`) REFERENCES `categorias`(`id`) ON UPDATE CASCADE;
Esto hara que el campo categoria de la tabla clientes, no permita ingresar un valor que no este en la tabla categorias y que ademas si modifico el id de la categoria en la tabla de categorias, modificara automaticamente en todos los clientes que tengan ese codigo de categoria.
ALTER TABLE `clientes`
ADD FOREIGN KEY (`categoria`) REFERENCES `categorias`(`id`) ON DELETE CASCADE;
Se pueden combinar las opciones.
ALTER TABLE `clientes`
ADD FOREIGN KEY (`categoria`) REFERENCES `categorias`(`id`) ON UPDATE RESTRICT ON DELETE CASCADE;
Con dolphin _ los errores en caso de que la operatoria quiera romper una regla definida en la foreing key.
Espero haber sido de ayuda...Cualquier duda a tu disposicion
jgabri
Posts: 17
Joined: Mon Jan 14, 2019 11:43 am

Re: Dolphin y foreign key

Post by jgabri »

Gracias Cesar por la ayuda,

Si hago desde dolphin un oTabla:delete y quiero eliminar la factura, también me elimina el detalle de la factura ?

Tengo dos tablas facturas y detalles, el foreign key lo tengo por el id, lo estoy haciendo bien ?

Funciona en tablas MyISAM ?

Un saludo,
Gabriel

Harbour
Fwh 19.05
User avatar
rogerio
Posts: 83
Joined: Wed Nov 09, 2005 11:22 pm
Location: São Lourenço da Serra - SP - Brasil
Contact:

Re: Dolphin y foreign key

Post by rogerio »

Ola Gabriel,

Si, se usares FOREIGN KEY con la opción ON DELETE CASCADE, ao eliminar la factura los detalles tambien serán eliminados.
Funciona en MyIsam. Note: la tabla principal e las tablas secundarias devem usar lo mismo motor.
Todos MyIsam o todos InnoDb.
Si, siempre el ID como referencia.

Saludos.
jgabri
Posts: 17
Joined: Mon Jan 14, 2019 11:43 am

Re: Dolphin y foreign key

Post by jgabri »

Gracias por la ayuda !!!!

Un saludo,
Gabriel
Post Reply