GSquared (10/8/2012)
The better solution would be rebuild the database and normalize it standardly.
+1
You do have a path to refactor the database and not change a line of VB6 code. It would involve refactoring the tables that currently contain multiple entities (Entity and EntityType, dead giveawy on the naming :-D) and then creating VIEWs with INSTEAD TRIGGERS on them to handle the create, update and delete operations in your now-normalized base tables. Your VB6 will not know the difference.
As for CONSTRAINT or TRIGGER, pick your poison. They'll both be a challenge to develop, test and support.
There are no special teachers of virtue, because virtue is taught by the whole community.
--Plato