--ignore-proc-sql Ignore procedure SQL differences
--no-batch-alters Do not clump multile alters to the same table into a
single ALTER TABLE statement where possible.
+ --quote=<character> Use <character> to quote all table and field
+ names in statements
=head1 DESCRIPTION
my ( @input, $list, $help, $debug, $trace, $caseopt, $ignore_index_names,
$ignore_constraint_names, $output_db, $mysql_parser_version,
- $ignore_view_sql, $ignore_proc_sql, $no_batch_alters );
+ $ignore_view_sql, $ignore_proc_sql, $no_batch_alters, $quote
+);
for my $arg ( @ARGV ) {
if ( $arg =~ m/^-?-l(ist)?$/ ) {
$list = 1;
elsif ( $arg =~ m/^--ignore-proc-sql$/ ) {
$ignore_proc_sql = 1;
}
+ elsif ( $arg =~ m/^--quote=(.)$/ ) {
+ $quote = $1;
+ }
elsif ( $arg =~ m/^([^=]+)=(.+)$/ ) {
push @input, { file => $1, parser => $2 };
}
elsif ( $arg =~ m/^--no-batch-alters$/ ) {
- $no_batch_alters = 1;
+ $no_batch_alters = 1;
}
else {
pod2usage( msg => "Unknown argument '$arg'" );
}
}
-print STDERR <<'EOM';
+print STDERR <<'EOM' unless $ENV{SQLT_NEWDIFF_NOWARN};
This code is experimental, currently the new code only supports MySQL or
SQLite diffing. To add support for other databases, please patch the relevant
SQL::Translator::Producer:: module. If you need compatibility with the old
output_db => $output_db,
no_batch_alters => $no_batch_alters,
debug => $debug,
- trace => $trace });
+ trace => $trace,
+ producer_args => {
+ quote_table_names => $quote,
+ quote_field_names => $quote,
+ },
+ });
if($result)
{
print $result;