Subject | Re: [ib-support] Deleting one way but not another (design help needed) |
---|---|
Author | Martijn Tonies |
Post date | 2002-06-24T10:55:45Z |
Hi,
you can recognize in the trigger...
How about a stored procedure that you call from the application
that first update the B record to remove the criteria and then delete
the A records.
Alternatively, only allow delete's from a stored procedure, removing
the DELETE right from the B table, but grant the stored procedure
the DELETE right to the B table. This makes sure that users, for
whatever reason possible, to delete B records. So instead of using
the trigger, use the procedure to check whether the records can be
deleted and call a different or with special parameters procedure to
delete records from B and A if you need to.
Martijn Tonies
InterBase Workbench - the developer tool for InterBase and Firebird
http://www.interbaseworkbench.com
Upscene Productions
http://www.upscene.com
"This is an object-oriented system.
If we change anything, the users object."
> I have a table B that has a FK constraint to table A on A's ID. B hasAssuming this is because the records have specific information that
> a primary key on ID plus another field so that several records can
> exist in B for one in A. Simple enough. The FK update and delete
> rules are both CASCADE.
>
> B, however has a BEFORE DELETE trigger that prevents the user from
> deleting some specific records. I want theese records to be
> an "untoched" group.
you can recognize in the trigger...
How about a stored procedure that you call from the application
that first update the B record to remove the criteria and then delete
the A records.
Alternatively, only allow delete's from a stored procedure, removing
the DELETE right from the B table, but grant the stored procedure
the DELETE right to the B table. This makes sure that users, for
whatever reason possible, to delete B records. So instead of using
the trigger, use the procedure to check whether the records can be
deleted and call a different or with special parameters procedure to
delete records from B and A if you need to.
Martijn Tonies
InterBase Workbench - the developer tool for InterBase and Firebird
http://www.interbaseworkbench.com
Upscene Productions
http://www.upscene.com
"This is an object-oriented system.
If we change anything, the users object."