Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Referencial Integrety Triggers not removed
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Divers
Thread ID:
00089026
Message ID:
00089228
Vues:
24
>>>>>I created a database with about 38 tables and have been experimenting with data conversion loads from 2.6. My procedure is to create a load program, load the data, index the table, set up referential integrety between the new table and several lookup tables (having cascade, restrict, restrict as the parent child options), and perform several test on the data. When I find a problem with the table structure or my normalization methods, I make modifications to the table and do the above again. My question is this, I use the Database designer to remove my referential integrety between the tables (highlighting the line connecting the tables and pressing the delete key). What I have been finding is that the insert and update triggers are not removed from the table and my load programs fail. I have to manually delete the triggers in the tables to get rid of them. Am I doing something wrong here (order wise) or does VFP have a problem with cleaning up after itself when referential
>>>>>integrety is removed?
>>>>>
>>>>>TIA
>>>>
>>>>To get rid of triggers you should rebuild RI, clicking Ok in RI Builder, i.e. you can just set appropriate rule to Ignore and rebuild without removing links.
>>>
>>>Hello Edward
>>>
>>>If all my relationships are removed (lines connecting tables in DBC) where would I access rebuild RI from, as edit referential integrety is not highlighted anymore in the database pulldown menu?
>>
>>Right, and the idea is not to remove these links but just change RI rule to 'Ignore'. If you already deleted all links, then recreate at least one of them, go to RI builder and click Ok.
>
>I created 2 links in the Database Designer and edited the referential integrity to do a cascade, restrict, restrict on the 2 tables. I then closed everything out and opened the database back up to remove one of the links. After removing one of the links I went into edit referential integrity and told it to rebuild the code. When that was completed I looked at the table of the link I removed and the 2 triggers were still inplace for insert and update. So this tells me that FoxPro does not clean up after itself, I should not have to tell FoxPro to ignore links that I do not want anymore and it should have removed the triggers from tables where no referential integrity is present when I manually ran the RI Builder on the only link that was left. I would classify this as a bug.

Bret, any problem is bug until you don't know way to go aroung. When you find the way, it's not bug anymore, it's a feature:).
BTW, there is another (run-time) workaround: you use oApp flag-property to block any RI triggers, it might be helpful for batch processing.
Edward Pikman
Independent Consultant
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform