X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSQL%2FTranslator%2FProducer%2FOracle.pm;h=5db9d7d81e5ba4259c11de8545a50020434a34f9;hb=44659089c28216f1984873bc4aa8641e2e0e3410;hp=edf1bab2d3b7d78bdad7396cbd917402c8db27fa;hpb=07720cf12b05aac9a0890055f802d3cb30f66983;p=dbsrgits%2FSQL-Translator.git diff --git a/lib/SQL/Translator/Producer/Oracle.pm b/lib/SQL/Translator/Producer/Oracle.pm index edf1bab..5db9d7d 100644 --- a/lib/SQL/Translator/Producer/Oracle.pm +++ b/lib/SQL/Translator/Producer/Oracle.pm @@ -327,7 +327,8 @@ sub create_table { for my $c ( $table->get_constraints ) { my $name = $c->name || ''; my @fields = map { quote($_,$qf) } $c->fields; - my @rfields = quote($c->reference_fields,$qf); + my @rfields = map { quote($_,$qf) } $c->reference_fields; + next if !@fields && $c->type ne CHECK_C; if ( $c->type eq PRIMARY_KEY ) { @@ -349,7 +350,7 @@ sub create_table { if ($name) { # Force prepend of table_name as ORACLE doesn't allow duplicate # CONSTRAINT names even for different tables (ORA-02264) - $name = "${table_name}_$name" unless $name =~ /^$table_name/; + $name = mk_name( "${table_name}_$name", 'u' ) unless $name =~ /^$table_name/; } else { $name = mk_name( $table_name, 'u' );