Ticket #1332930 (Feature Requests)

Martin Marques martin at bugs.unl.edu.ar
Tue Aug 15 16:06:51 CEST 2006

On Tue, 15 Aug 2006, Eric Stadtherr wrote:

> Martin,
> I understand the intent of the CASCADE, I was just under the impression that 
> the "contact_type" table in your first example (or the contact_field_type 
> table in my version) were "static" tables that defined the existence of 
> certain field types (phone number, email, birthday, first name, last name, 
> etc.). The type column in the contact table would then reference the PK of 
> the "type" table (through the FK constraint) to describe which type of field 
> was contained in that row. You then wouldn't want to delete your type entry 
> if there were no referencing contact entries.
> Does this make sense?

Are we talking about the same structure?

<sql code>
alter table contact_info add foreign key (contact_id) references contact 
(contact_id) on delete cascade on update cascade
alter table contact_info add foreign key (contact_type) references types 
(type_id) on update cascade on delete cascade
</sql code>

In this case, the contact info (your phone numbers, email addresses, etc.) 
will get deleted, IF the contact is deleted. That's a good policy, else 
you'll have garbage in the DB.

  21:50:04 up 2 days,  9:07,  0 users,  load average: 0.92, 0.37, 0.18
Lic. Martín Marqués         |   SELECT 'mmarques' ||
Centro de Telemática        |       '@' || 'unl.edu.ar';
Universidad Nacional        |   DBA, Programador,
     del Litoral             |   Administrador

More information about the Dev mailing list