>>Hi everybody,
>>
>>I'm thinking, should I use the built-in RI Builder for a simple application or should I try to enforce RI rules from the interface?
>>
>>I have the following tables in a database:
>>
>>Tickets, Problems, Resolutions, ProblemResolution, Software, Hardware, Other.
>>
>>Tickets may have pointers to all of these tables. I allow to Delete Problems and Resolutions in the interface, I also allow to make inactive Software/Hardware/Other.
>>
>>What would be the best course of action for me to proceed in enforcing some integrity rules?
>>
>>What do you suggest?
>>
>>Thanks a lot in advance.
>
>I would use RI even for the simplest of applications - it is easy to use, and it does give you some advantages (data integrity, simplification in some cases through cascading delete).
>
>Especially for more demanding applications, I would ADDITIONALLY put validation rules to do some checks before RI kicks in; this is to avoid the user getting unintelligible (for him) messages like "trigger failed".
I'm thinking RI would not really work for me. I tried it and it is going to give a message on the attempt to Save, not on attempt to delete. I think I need to give user a message right away. I'll explore this option.
If it's not broken, fix it until it is.
My Blog