Bases de Datos > SQL Server

 Integridad Referencial

<< < (2/2)

F_Tanori:
La solucion de lencho es utilizada comunmente, la eliminacion logica, si no la utilizas asi, otra manera seria crear una tabla historial donde se almacene la informacion completa del cliente y los pedidos como warehouse seria solo informacion historica y no operacional

Depende de como lo permita el proyecto

Porque si los tienes relacionados por clave de cliente y el clienete 4 es quien realizo los movimientos y lo borras como sabras quien es el cliente 4? en un momento dado.... por eso el campo stautus es muy comun :P ademas que sirve tambien para 'recuperar' informacion si se elimino lo que no era, aunque  casi no pasa eso....:whistling:


Saludos

Rro_237:
Eliminacion en cascada por supuesto la mejor y mas clara manera de hacerlo, y se comienza a eliminar desde la ultima tabla en que se inserto datos (aunque obviamente depende del relacionamiento)

F_Tanori:

--- Cita de: "Rro_237" ---Eliminacion en cascada por supuesto la mejor y mas clara manera de hacerlo, y se comienza a eliminar desde la ultima tabla en que se inserto datos (aunque obviamente depende del relacionamiento)
--- Fin de la cita ---


--- Cita de: "El Loco Power" ---....el administrador decide eliminar al cliente(teniendo en cuenta que el cliente tiene registrado muchas compras) pero a la vez no desea perder ninguna de sus compras hechas puesto que lo necesita como historial. Ahora la pregunta es.. Como hacer para que el cliente no figure mas en la tabla maestra pero sin perder sus transacciones hechas en su historial de compras...
--- Fin de la cita ---


 :rolleyes:  :whistling:

Nebire:
Lomás lógico es tener otra tabla de clientes eliminados, así antes de eliminar un cliente, pasas todos los datos de sus compras a la tabla de compras_de_clientes_eliminados luego eliminas los datos de las tablas vigentes y finalmente el cliente. no hagas relación entre esta tabla y los id de clientes, esta tabla solo será para consultas de histroiales.

Mantener datos que no se van a usar o se usarán poco en tablas que se usan con frecuencia ralentiza el trabajo de la Bd, así que no seas ceporro y no mantengas datos que vas a consultar 2 veces al año en una tabla que manejas a diario.

De todos modos por la descripción del problema que realizas, tengo la sensación de que tienes un cacao de Bd de 3 pares de coj*****, te recomendaría  una lectura sobre 'Normalización' de las bases de datos... busca en google y aplícate al cuento.

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa