Graeme Geldenhuys wrote: > Now I want to delete a specific AddressType, but that AddressType is > being used by some Contacts in there address information. > > What's my choices? How do you handle such a case? > > * What happens if you simply try and delete the AddressType? > * DB referential integrity might stop the delete, but gives a lovely > error. If I don't have referential integrity enabled, I have ghost > address types lying around. > * Do I have to create some search query to run through all tables looking > for that AddressType? > * Must I maybe extend my AddressType table to include some 'Active' > boolean field. If set to False, it simply hides that record from the > GUI, but still available in the database?
Always use referential integrity. After transaction, this is the most nice RDBMS feature. A 'lovely error message' is far better than ghosts in the database, anyway you can choose between query the database before try to delete the record (when you have an oo model this is very simple to implement within an abstract layer), as well as catch the exception and display a real lovely message to the user. Joao Morais _______________________________________________ Lazarus mailing list [email protected] http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
