--- /dev/null
+BEGIN;
+
+DROP TABLE IF EXISTS asset.call_number_temp;
+CREATE TABLE asset.call_number_temp AS (
+ SELECT * FROM asset.call_number WHERE id = -1
+);
+
+DROP TABLE IF EXISTS biblio.record_entry_temp;
+CREATE TABLE biblio.record_entry_temp AS (
+ SELECT * FROM biblio.record_entry WHERE id = -1
+);
+
+
+TRUNCATE
+ action.circulation,
+ asset.copy,
+ biblio.record_entry,
+ asset.call_number,
+ metabib.metarecord_source_map,
+ metabib.metarecord
+CASCADE;
+
+INSERT INTO asset.call_number SELECT * FROM asset.call_number_temp;
+INSERT INTO biblio.record_entry SELECT * FROM biblio.record_entry_temp;
+
+
--- /dev/null
+alter table actor.usr disable rule protect_user_delete;
+begin;
+delete from actor.usr where usrname !~ 'admin';
+delete from actor.usr_note where usr not in (select id from actor.usr);
+delete from actor.usr_address where usr not in (select id from actor.usr);
+delete from actor.card where usr not in (select id from actor.usr);
+delete from action.circulation;
+delete from action.hold_request;
+delete from money.billing;
+delete from money.grocery;
+delete from action.non_cataloged_circulation;
+delete from action.in_house_use;
+delete from reporter.template_folder where owner not in (select id from actor.usr);
+delete from reporter.report_folder where owner not in (select id from actor.usr);
+delete from reporter.output_folder where owner not in (select id from actor.usr);
+delete from reporter.template where owner not in (select id from actor.usr);
+delete from reporter.report where owner not in (select id from actor.usr);
+delete from reporter.schedule where runner not in (select id from actor.usr);
+commit;
+alter table actor.usr enable rule protect_user_delete;