6 qw(AltOnly MT NewSs NotOn PAR Un X Y)
13 @args{map {my $a = $_; lc($a)} @ARGV} = 1;
17 print "DROP TABLE SubInd_ch${chr};\n";
19 print "DROP TABLE SubInd;\n";
24 chr VARCHAR NOT NULL ,
25 batch_id int NOT NULL ,
26 subsnp_id int NOT NULL ,
27 submitted_ind_id int NOT NULL ,
28 submitted_strand_code int NULL ,
29 allele_flag int NULL ,
35 print "CREATE TABLE SubInd_ch${chr} (CHECK (chr = '$chr{${chr}}')) INHERITS (SubInd);\n";
40 CREATE OR REPLACE FUNCTION subind_insert_trigger()
41 RETURNS TRIGGER AS \$\$
46 IF (NEW.chr = '${chr}') THEN
47 INSERT INTO SubInd_ch${chr} VALUES (NEW.*);
53 RAISE EXCEPTION 'chr out of range!';
63 print "CREATE INDEX ON SubInd_ch${chr}(subsnp_id);\n";
64 print "CREATE INDEX ON SubInd_ch${chr}(submitted_ind_id,subsnp_id,gty_id);\n";