added credit for dave cash
[dbsrgits/SQL-Translator.git] / bin / sqlt
index 9f7182c..e42f5a6 100755 (executable)
--- a/bin/sqlt
+++ b/bin/sqlt
@@ -2,7 +2,7 @@
 # vim: set ft=perl:
 
 # -------------------------------------------------------------------
-# $Id: sqlt,v 1.5 2003-10-04 01:22:46 kycl4rk Exp $
+# $Id: sqlt,v 1.10 2003-10-19 17:01:25 grommit Exp $
 # -------------------------------------------------------------------
 # Copyright (C) 2002 Ken Y. Clark <kclar@cpan.org>,
 #                    darren chamberlain <darren@cpan.org>
@@ -113,7 +113,7 @@ use Pod::Usage;
 use SQL::Translator;
 
 use vars qw( $VERSION );
-$VERSION = sprintf "%d.%02d", q$Revision: 1.5 $ =~ /(\d+)\.(\d+)/;
+$VERSION = sprintf "%d.%02d", q$Revision: 1.10 $ =~ /(\d+)\.(\d+)/;
 
 my $from;             # the original database
 my $to;               # the destination database 
@@ -145,7 +145,7 @@ GetOptions(
     'add-drop-table'  => \$add_drop_table,
     'attrib-values'   => \$attrib_values,
     'd|debug'         => \$debug,
-    'emit_empty_tags' => \$emit_empty_tags,
+    'emit-empty-tags' => \$emit_empty_tags,
     'f|from|parser:s' => \$from,
     'fs:s'            => \$field_separator,
     'h|help'          => \$help,
@@ -169,6 +169,14 @@ GetOptions(
 ) or pod2usage(2);
 
 my @files = @ARGV; # source files
+unless ( @files ) {
+    if ( $from eq 'DBI' ) {
+        @files = ('!');
+    }
+    else {
+        @files = ('-');
+    }
+}
 
 pod2usage(1) if $help;
 
@@ -215,14 +223,21 @@ if ( $list ) {
     exit(0);
 }
 
-pod2usage( msg => 'Please supply "from" and "to" arguments' ) unless $from && $to;
+pod2usage( msg => 'Please supply "from" and "to" arguments' ) 
+    unless $from && $to;
 
 $translator->parser($from);
 $translator->producer($to);
 
 for my $file (@files) {
-    my $output = $translator->translate(file => $file) or die
+    my @args = 
+        ($file eq '-') ? (data => \*STDIN) :
+        ($file eq '!') ? (data => '') :
+        (file => $file);
+
+    my $output = $translator->translate(@args) or die
         "Error: " . $translator->error;
+
     print $output;
 }
 
@@ -235,11 +250,11 @@ for my $file (@files) {
 
 =head1 AUTHOR
 
-Ken Y. Clark E<lt>kclark@cpan.orgE<gt>.
+Ken Y. Clark E<lt>kclark@cpan.orgE<gt>,
+darren chamberlain E<lt>darren@cpan.orgE<gt>.
 
 =head1 SEE ALSO
 
-perl, SQL::Translator, Parse::RecDescent, 
-L<http://sqlfairy.sourceforge.net>.
+SQL::Translator, L<http://sqlfairy.sourceforge.net>.
 
 =cut