fixing typo and moving grab file into else clause
[migration-tools.git] / bibs_items / stage-HOLDINGS-MULT.pl
1 #!/usr/bin/perl -w
2 # sed -i 's/\\/\//g' *MULT*
3 # ls *MULT* | ~/git/migraton-tools/bibs_items/stage-HOLDINGS-MULT.pl >> scripts/asset_copy_stage.sql
4
5 use strict;
6
7 my $first_time = 1;
8 my $schema;
9
10 sub first_time {
11     $schema = shift;
12     $first_time = 0;
13     print qq^
14 DROP TABLE IF EXISTS m_$schema.asset_copy_multi_legacy;
15 CREATE TABLE m_$schema.asset_copy_multi_legacy (
16     eg_bib_id BIGINT,
17     eg_copy_id INTEGER,
18     hseq TEXT,
19     subfield TEXT,
20     value TEXT
21 );
22 CREATE INDEX ON m_$schema.asset_copy_multi_legacy (eg_bib_id);
23 CREATE INDEX ON m_$schema.asset_copy_multi_legacy (eg_copy_id);
24 CREATE INDEX ON m_$schema.asset_copy_multi_legacy (hseq);
25 CREATE INDEX ON m_$schema.asset_copy_multi_legacy (subfield);
26 CREATE INDEX ON m_$schema.asset_copy_multi_legacy (hseq,subfield);\n\n
27 ^;
28
29 }
30
31
32 while (my $line = <>) {
33     chomp $line;
34     if ($line =~ /^(.+?)-.+(.)\.pg$/) {
35         first_time($1) if $first_time;
36         print "\\COPY m_$1.asset_copy_multi_legacy (eg_bib_id,hseq,value) FROM '$line'\n";
37         print "UPDATE m_$1.asset_copy_multi_legacy SET subfield = '$2' WHERE subfield IS NULL;\n\n";
38     }
39 }
40
41 print "UPDATE m_$schema.asset_copy_multi_legacy SET eg_copy_id = b.id FROM m_$schema.asset_copy_legacy b WHERE x_eg_bib_id = eg_bib_id AND x_hseq = hseq;\n\n";
42