[OPEN-ILS-DEV] Removing records - Training Opportunity...

Grant Johnson FGJohnson at upei.ca
Wed Oct 22 16:54:15 EDT 2008


I don't want to change the table constraints in Evergreen.
But have a training opportunity for someone. :-)

We need to delete some electronic records without items from the catalog.(for now).
These records have a biblio.record_entry.tcn_source of LIKE 'cis'.

I can't delete from biblio.record_entry as it's referenced as a foreign_key in .metarecord.
I can't delete from .metarecord as it's referenced as a foreign key in .metarecord_source_map.
I CAN remove the rows one at a time from the msm -> m -> re and the record is gone.

Can someone help with the syntax on how to batch delete the following..... and let me know if this is all wrong!

I know what this means - and am looking up how to build the syntax tonight:
 - ERROR:  more than one row returned by a subquery used as an expression... :-)

# DELETE from metabib.metarecord_source_map  where source = (SELECT id FROM biblio.record_entry where tcn_value like 'cis%');
# DELETE from metabib.metarecord where master_record = ((SELECT id FROM biblio.record_entry where tcn_value like 'cis%');
# DELETE from biblio.record_entry where tcn_value like 'cis%');


Table References:
biblio.record_entry
id = 14497

metabib.metarecord
id=17448     master_record=14497

metaib.metarecord_source_map
id=14710      metarecord=17448    source=14497
-- 

F. Grant Johnson
  Systems Coordinator
  Robertson Library
  University of Prince Edward Island 



More information about the Open-ils-dev mailing list