--- trunk/sql/mkindex.pl 2005/08/02 00:42:29 36 +++ trunk/sql/mkindex.pl 2005/08/02 15:20:44 37 @@ -34,9 +34,9 @@ $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 @@ 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}; }