X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=sql%2Fmkindex.pl;h=2cb05e6015dcdc56d93bb6791ff7294173ebaef4;hb=ac3e38c6121e07fdc54f874de8f22ba5ce5ba781;hp=7730620fcc4ee580f6beee1160bb698d6f185ea5;hpb=bd7198eb0bbd52da8e5ded2dad0fa24b5011a200;p=webpac2 diff --git a/sql/mkindex.pl b/sql/mkindex.pl index 7730620..2cb05e6 100755 --- a/sql/mkindex.pl +++ b/sql/mkindex.pl @@ -34,9 +34,9 @@ while (<>) { $out->{inherits}->{$table} = $1; } - if (s/^\s*(\S+)(.+?)references\s+(\S+)\s*\((\S+)\)/\t$1$2/i) { + if (s/^\s*(\S+)(.+?)references\s+(\S+)\s*\((\S+)\)([^,]*)([,\s]*)$/\t$1$2$6/i) { # if (/^\s*(\S+)(.+?)references\s+(\S+)\s*\((\S+)\)/) { - @{ $out->{references}->{$table}->{$1} } = ( $3, $4 ); + @{ $out->{references}->{$table}->{$1} } = ( $3, $4, $5 ); } print "$_\n"; @@ -47,8 +47,8 @@ while (<>) { print STDERR Dumper($out); foreach my $table (keys %{ $out->{inherits} }) { - my $parent = $out->{inherits}->{$table} || die; - my $pk = $out->{table_pk}->{$parent} || die; + my $parent = $out->{inherits}->{$table} || die "$table doesn't inherit anything"; + my $pk = $out->{table_pk}->{$parent} || die "$parent doesn't have primary key"; my $seq = $parent . '_' . $pk . '_seq'; print qq{alter table $table alter column $pk set default nextval('$seq');\n}; }