Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   ¿Marcar o Borrar registros en las tablas? (https://www.clubdelphi.com/foros/showthread.php?t=87129)

Delphitest 18-11-2014 20:13:14

¿Marcar o Borrar registros en las tablas?
 
Buenas tardes,

simplemente quería saber vuestra opinión acerca del tratamiento de datos en las tablas a la hora de borrar registros.

Estoy usando ADO de momento enlazado con una base de datos Access

Recuerdo hace años cuando programaba con dBase IV que nunca borraba directamente los registros de una tabla por seguridad. Los marcaba con "delete" y luego de vez en cuando hacía un "Pack" para eliminarlos definitivamente.

No se si hay opciones parecidas ahora y si realmente se sigue haciendo así o directamente se eliminan los registros sin opción a recuperarlos.

Lo comento porque veo que en un descuido se puede borrar información sin querer pese a usar mensajes de confirmación (y obviamente hacer copias de seguridad continuamente).

Se me ocurría la posibilidad de poner un campo boleano "Borrado" y que en lugar de borrar se marcase o algo parecido.

¿Como ponéis está parte en práctica?

Gracias por vuestras opiniones

Un saludo

TiammatMX 18-11-2014 20:17:09

Pregunta. ¿Conservarías basura en tu escritorio "por si llegases a necesitarla nuevamente"? Yo tampoco.

El no borrar físicamente el registro hasta darle un PACK o así es una PÉSIMA práctica de base de datos. Lo que no se necesita se borra y punto. Así de simple.

roman 18-11-2014 20:29:35

Cita:

Empezado por TiammatMX (Mensaje 485020)
Pregunta. ¿Conservarías basura en tu escritorio "por si llegases a necesitarla nuevamente"? Yo tampoco.

¿Que no es lo que básicamente hace el escritorio de Windows :rolleyes: :D

Pero estoy de acuerdo. A final de cuentas, ante usuarios descuidados incluso el PACK puede ser insuficiente.

// Saludos

AgustinOrtu 18-11-2014 23:09:23

Depende de los que van a usar el programa :D :D

La verdad prefiero tener una pesima mala practica de bd antes que un pesimo dolor de cabeza cuando borran cosas "sin querer"

Es muy gratificante tildar un campo boolean a true y que magicamente vuelva todo

PD: Que, nunca usaron el restaurar de la papelera de reciclaje???

TiammatMX 18-11-2014 23:34:09

Cita:

Empezado por AgustinOrtu (Mensaje 485039)
Depende de los que van a usar el programa :D :D ...

¡Ah, sí!, ésos entes humanoides con manos de lava, LOS USUARIOS...

Delphitest 19-11-2014 08:04:34

Creo que en el fondo todos pensamos lo mismo.

De momento para no armar mucho desde delphi, he programado con un software externo una copia de seguridad diaria de toda la base de datos para que al menos en caso de "desastre" solo se pierdan los datos del día.

Gracias por vuestras opiniones.

Un saludo

pacopenin 19-11-2014 09:42:40

Cita:

Empezado por AgustinOrtu (Mensaje 485039)
Depende de los que van a usar el programa :D :D

La verdad prefiero tener una pesima mala practica de bd antes que un pesimo dolor de cabeza cuando borran cosas "sin querer"

Es muy gratificante tildar un campo boolean a true y que magicamente vuelva todo

PD: Que, nunca usaron el restaurar de la papelera de reciclaje???

Yo estoy de acuerdo con ésta respuesta, aunque en mi caso no siempre actúo así. En pequeñas aplicaciones si borro físicamente, pero en las de mayor volumen y muchos puestos de trabajo hay determinada información que, fruto alguna que otra mala experiencia, simplemente la marco (como por ejemplo los clientes). También en esos casos llevo registros de auditoria. Se que no es lo más eficiente, pero me ha salvado más de una ocasión. Y ahora que estoy empezando a trabajar con aplicaciones web me planteo seriamente no borrar nunca y por supuesto auditar todo, ya las bases de datos serán compartidas por varios clientes y la opción de restaurar la base de datos no es viable salvo desastres mayúsculos. En esto de las aplicaciones web parto de la base que el volumen de datos mis clientes tipo no va más allá de pocos miles de registros al año.

Saludos,


La franja horaria es GMT +2. Ahora son las 16:41:48.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi