|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/bin/dbfdump.PL DBD-XBase-0.241/bin/dbfdump.PL
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/bin/dbfdump.PL 2002-03-07 07:36:02.000000000 +0000
|
|
|
75ce05f |
+++ DBD-XBase-0.241/bin/dbfdump.PL 1970-01-01 01:00:00.000000000 +0100
|
|
|
75ce05f |
@@ -1,189 +0,0 @@
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-use Config;
|
|
|
75ce05f |
-my $filename = $0;
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-$filename =~ s/\.PL$//;
|
|
|
75ce05f |
-open OUT,">$filename" or die "Can't create $filename: $!";
|
|
|
75ce05f |
-chmod(0755, $filename);
|
|
|
75ce05f |
-print "Extracting $filename (with #! and variable substitution)\n";
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-print OUT <<"EOHEADER";
|
|
|
75ce05f |
-$Config{'startperl'} -w
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-EOHEADER
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-print OUT <<'EOBODY';
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-use XBase;
|
|
|
75ce05f |
-use Getopt::Long;
|
|
|
75ce05f |
-use strict;
|
|
|
75ce05f |
-$^W = 1;
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-my $stdin = 0;
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-if (defined $ARGV[$#ARGV] and $ARGV[$#ARGV] eq '-') {
|
|
|
75ce05f |
- $stdin = 1; pop @ARGV;
|
|
|
75ce05f |
-}
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-my %options;
|
|
|
75ce05f |
-Getopt::Long::GetOptions( \%options,
|
|
|
75ce05f |
- 'help', 'version', 'info', 'rs=s', 'fs=s', 'undef=s', 'fields=s',
|
|
|
75ce05f |
- 'nomemo', 'memofile=s', 'memosep=s', 'table',
|
|
|
75ce05f |
- 'SQL',
|
|
|
75ce05f |
- ) or exit;
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-if (defined $options{'version'}) {
|
|
|
75ce05f |
- print "This is dbfdump version $XBase::VERSION.\n";
|
|
|
75ce05f |
- exit;
|
|
|
75ce05f |
-}
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-if ($stdin) {
|
|
|
75ce05f |
- push @ARGV, '-';
|
|
|
75ce05f |
- $options{'nomemo'} = 1;
|
|
|
75ce05f |
-}
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-if (@ARGV == 0 or defined $options{'help'}) {
|
|
|
75ce05f |
- die <<'EOF';
|
|
|
75ce05f |
-Usage: dbfdump [ options ] files
|
|
|
75ce05f |
- where the options specify
|
|
|
75ce05f |
- --rs output record separator (default newline)
|
|
|
75ce05f |
- --fs output field separator (default colon)
|
|
|
75ce05f |
- --fields comma separated list of fields to print (default all)
|
|
|
75ce05f |
- --undef what to print for NULL values (default empty string)
|
|
|
75ce05f |
- --memofile specifies unstandard name of attached memo file
|
|
|
75ce05f |
- --memosep separator for dBase III dbt's (default \x1a\x1a)
|
|
|
75ce05f |
- --table output in nice table format (needs Data::ShowTable)
|
|
|
75ce05f |
- all having as parameter a string; and also
|
|
|
75ce05f |
- --nomemo do not try to read the memo (dbt/fpt) file
|
|
|
75ce05f |
- --info only print info about the file and fields
|
|
|
75ce05f |
- --version print version of the XBase library
|
|
|
75ce05f |
-EOF
|
|
|
75ce05f |
-}
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-my %addopts = ();
|
|
|
75ce05f |
-if (defined $options{'nomemo'} or defined $options{'info'}) {
|
|
|
75ce05f |
- $addopts{'ignorememo'} = 1;
|
|
|
75ce05f |
-}
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-$addopts{'memosep'} = $options{'memosep'};
|
|
|
75ce05f |
-$addopts{'memofile'} = $options{'memofile'};
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-if (defined $options{'info'}) {
|
|
|
75ce05f |
- $addopts{'ignorebadheader'} = 1;
|
|
|
75ce05f |
-}
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-my $file;
|
|
|
75ce05f |
-for $file (@ARGV) {
|
|
|
75ce05f |
- my $table = new XBase 'name' => $file, %addopts;
|
|
|
75ce05f |
-
|
|
|
75ce05f |
- if (not defined $table) {
|
|
|
75ce05f |
- print STDERR XBase->errstr;
|
|
|
75ce05f |
- next;
|
|
|
75ce05f |
- }
|
|
|
75ce05f |
- if (defined $options{'info'}) {
|
|
|
75ce05f |
- if (not defined $options{'SQL'}) {
|
|
|
75ce05f |
- print $table->header_info;
|
|
|
75ce05f |
- } else {
|
|
|
75ce05f |
- my $name = $file;
|
|
|
75ce05f |
- $name =~ s!^.*/|\.dbf$!!ig;
|
|
|
75ce05f |
- print "create table $name (\n";
|
|
|
75ce05f |
- my @names = $table->field_names;
|
|
|
75ce05f |
- my %conv = qw!
|
|
|
75ce05f |
- C varchar
|
|
|
75ce05f |
- N numeric
|
|
|
75ce05f |
- F numeric
|
|
|
75ce05f |
- L boolean
|
|
|
75ce05f |
- M blob
|
|
|
75ce05f |
- D date
|
|
|
75ce05f |
- T time
|
|
|
75ce05f |
- !;
|
|
|
75ce05f |
- my @types = map { $conv{$_} } $table->field_types;
|
|
|
75ce05f |
- my @lengths = $table->field_lengths;
|
|
|
75ce05f |
- my @decimals = $table->field_decimals;
|
|
|
75ce05f |
- for (my $i = 0; $i < @names; $i++) {
|
|
|
75ce05f |
- print "\t$names[$i] $types[$i]";
|
|
|
75ce05f |
- if ($types[$i] eq 'blob') {
|
|
|
75ce05f |
- $lengths[$i] = $decimals[$i] = undef;
|
|
|
75ce05f |
- }
|
|
|
75ce05f |
- if ($lengths[$i] or $decimals[$i]) {
|
|
|
75ce05f |
- print "($lengths[$i]";
|
|
|
75ce05f |
- print ", $decimals[$i]" if $decimals[$i];
|
|
|
75ce05f |
- print ")";
|
|
|
75ce05f |
- }
|
|
|
75ce05f |
- if (defined $names[$i+1]) {
|
|
|
75ce05f |
- print ',';
|
|
|
75ce05f |
- }
|
|
|
75ce05f |
- print "\n";
|
|
|
75ce05f |
- }
|
|
|
75ce05f |
- print ")\n";
|
|
|
75ce05f |
- }
|
|
|
75ce05f |
- } else {
|
|
|
75ce05f |
- $table->dump_records(%options) or print STDERR $table->errstr;
|
|
|
75ce05f |
- }
|
|
|
75ce05f |
- $table->close;
|
|
|
75ce05f |
-}
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-1;
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-__END__
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-=head1 NAME
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-dbfdump - Dump the record of the dbf file
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-=head1 FORMAT
|
|
|
75ce05f |
-
|
|
|
75ce05f |
- dbfdump [options] files
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-where options are
|
|
|
75ce05f |
-
|
|
|
75ce05f |
- --rs output record separator (default newline)
|
|
|
75ce05f |
- --fs output field separator (default colon)
|
|
|
75ce05f |
- --fields comma separated list of fields to print (default all)
|
|
|
75ce05f |
- --undef string to print for NULL values (default empty)
|
|
|
75ce05f |
- --memofile specifies unstandard name of attached memo file
|
|
|
75ce05f |
- --memosep separator for dBase III dbt's (default \x1a\x1a)
|
|
|
75ce05f |
-
|
|
|
75ce05f |
- --nomemo do not try to read the memo (dbt/fpt) file
|
|
|
75ce05f |
- --info print info about the file and fields
|
|
|
75ce05f |
- with additional --SQL parameter, outputs the SQL create table
|
|
|
75ce05f |
- --version print version of the XBase library
|
|
|
75ce05f |
- --table output in nice table format (only available when
|
|
|
75ce05f |
- Data::ShowTable is installed, overrides rs and fs)
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-=head1 SYNOPSIS
|
|
|
75ce05f |
-
|
|
|
75ce05f |
- dbfdump -fields id,msg table.dbf
|
|
|
75ce05f |
- dbfdump -fs=' : ' table
|
|
|
75ce05f |
- dbfdump --nomemo file.dbf
|
|
|
75ce05f |
-
|
|
|
75ce05f |
- ssh user@host 'cat file.dbf.gz' | gunzip - | dbfdump -
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-=head1 DESCRIPTION
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-Dbfdump prints to standard output the content of dbf files listed. By
|
|
|
75ce05f |
-default, it prints all fields, separated by colons, one record on
|
|
|
75ce05f |
-a line. The output record and column separators can be changed by
|
|
|
75ce05f |
-switches on the command line. You can also ask only for some fields to
|
|
|
75ce05f |
-be printed.
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-The content of associated memo files (dbf, fpt) is printed for memo
|
|
|
75ce05f |
-fields, unless you use the C<--nomemo> option.
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-You can specify reading the standard input by putting dash (-) instead
|
|
|
75ce05f |
-of file name.
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-=head1 AUTHOR
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-(c) 1998--1999 Jan Pazdziora, adelton@fi.muni.cz,
|
|
|
75ce05f |
-http://www.fi.muni.cz/~adelton/
|
|
|
75ce05f |
-at Faculty of Informatics, Masaryk University in Brno, Czech Republic
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-=head1 SEE ALSO
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-perl(1); XBase(3)
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-=cut
|
|
|
75ce05f |
-
|
|
|
75ce05f |
-EOBODY
|
|
|
75ce05f |
-
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/bin/dbfdump.pl.PL DBD-XBase-0.241/bin/dbfdump.pl.PL
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/bin/dbfdump.pl.PL 1970-01-01 01:00:00.000000000 +0100
|
|
|
75ce05f |
+++ DBD-XBase-0.241/bin/dbfdump.pl.PL 2006-03-16 22:17:24.000000000 +0000
|
|
|
75ce05f |
@@ -0,0 +1,189 @@
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+use Config;
|
|
|
75ce05f |
+my $filename = $0;
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+$filename =~ s/\.PL$//;
|
|
|
75ce05f |
+open OUT,">$filename" or die "Can't create $filename: $!";
|
|
|
75ce05f |
+chmod(0755, $filename);
|
|
|
75ce05f |
+print "Extracting $filename (with #! and variable substitution)\n";
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+print OUT <<"EOHEADER";
|
|
|
75ce05f |
+$Config{'startperl'} -w
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+EOHEADER
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+print OUT <<'EOBODY';
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+use XBase;
|
|
|
75ce05f |
+use Getopt::Long;
|
|
|
75ce05f |
+use strict;
|
|
|
75ce05f |
+$^W = 1;
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+my $stdin = 0;
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+if (defined $ARGV[$#ARGV] and $ARGV[$#ARGV] eq '-') {
|
|
|
75ce05f |
+ $stdin = 1; pop @ARGV;
|
|
|
75ce05f |
+}
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+my %options;
|
|
|
75ce05f |
+Getopt::Long::GetOptions( \%options,
|
|
|
75ce05f |
+ 'help', 'version', 'info', 'rs=s', 'fs=s', 'undef=s', 'fields=s',
|
|
|
75ce05f |
+ 'nomemo', 'memofile=s', 'memosep=s', 'table',
|
|
|
75ce05f |
+ 'SQL',
|
|
|
75ce05f |
+ ) or exit;
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+if (defined $options{'version'}) {
|
|
|
75ce05f |
+ print "This is dbfdump.pl version $XBase::VERSION.\n";
|
|
|
75ce05f |
+ exit;
|
|
|
75ce05f |
+}
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+if ($stdin) {
|
|
|
75ce05f |
+ push @ARGV, '-';
|
|
|
75ce05f |
+ $options{'nomemo'} = 1;
|
|
|
75ce05f |
+}
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+if (@ARGV == 0 or defined $options{'help'}) {
|
|
|
75ce05f |
+ die <<'EOF';
|
|
|
75ce05f |
+Usage: dbfdump.pl [ options ] files
|
|
|
75ce05f |
+ where the options specify
|
|
|
75ce05f |
+ --rs output record separator (default newline)
|
|
|
75ce05f |
+ --fs output field separator (default colon)
|
|
|
75ce05f |
+ --fields comma separated list of fields to print (default all)
|
|
|
75ce05f |
+ --undef what to print for NULL values (default empty string)
|
|
|
75ce05f |
+ --memofile specifies unstandard name of attached memo file
|
|
|
75ce05f |
+ --memosep separator for dBase III dbt's (default \x1a\x1a)
|
|
|
75ce05f |
+ --table output in nice table format (needs Data::ShowTable)
|
|
|
75ce05f |
+ all having as parameter a string; and also
|
|
|
75ce05f |
+ --nomemo do not try to read the memo (dbt/fpt) file
|
|
|
75ce05f |
+ --info only print info about the file and fields
|
|
|
75ce05f |
+ --version print version of the XBase library
|
|
|
75ce05f |
+EOF
|
|
|
75ce05f |
+}
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+my %addopts = ();
|
|
|
75ce05f |
+if (defined $options{'nomemo'} or defined $options{'info'}) {
|
|
|
75ce05f |
+ $addopts{'ignorememo'} = 1;
|
|
|
75ce05f |
+}
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+$addopts{'memosep'} = $options{'memosep'};
|
|
|
75ce05f |
+$addopts{'memofile'} = $options{'memofile'};
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+if (defined $options{'info'}) {
|
|
|
75ce05f |
+ $addopts{'ignorebadheader'} = 1;
|
|
|
75ce05f |
+}
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+my $file;
|
|
|
75ce05f |
+for $file (@ARGV) {
|
|
|
75ce05f |
+ my $table = new XBase 'name' => $file, %addopts;
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+ if (not defined $table) {
|
|
|
75ce05f |
+ print STDERR XBase->errstr;
|
|
|
75ce05f |
+ next;
|
|
|
75ce05f |
+ }
|
|
|
75ce05f |
+ if (defined $options{'info'}) {
|
|
|
75ce05f |
+ if (not defined $options{'SQL'}) {
|
|
|
75ce05f |
+ print $table->header_info;
|
|
|
75ce05f |
+ } else {
|
|
|
75ce05f |
+ my $name = $file;
|
|
|
75ce05f |
+ $name =~ s!^.*/|\.dbf$!!ig;
|
|
|
75ce05f |
+ print "create table $name (\n";
|
|
|
75ce05f |
+ my @names = $table->field_names;
|
|
|
75ce05f |
+ my %conv = qw!
|
|
|
75ce05f |
+ C varchar
|
|
|
75ce05f |
+ N numeric
|
|
|
75ce05f |
+ F numeric
|
|
|
75ce05f |
+ L boolean
|
|
|
75ce05f |
+ M blob
|
|
|
75ce05f |
+ D date
|
|
|
75ce05f |
+ T time
|
|
|
75ce05f |
+ !;
|
|
|
75ce05f |
+ my @types = map { $conv{$_} } $table->field_types;
|
|
|
75ce05f |
+ my @lengths = $table->field_lengths;
|
|
|
75ce05f |
+ my @decimals = $table->field_decimals;
|
|
|
75ce05f |
+ for (my $i = 0; $i < @names; $i++) {
|
|
|
75ce05f |
+ print "\t$names[$i] $types[$i]";
|
|
|
75ce05f |
+ if ($types[$i] eq 'blob') {
|
|
|
75ce05f |
+ $lengths[$i] = $decimals[$i] = undef;
|
|
|
75ce05f |
+ }
|
|
|
75ce05f |
+ if ($lengths[$i] or $decimals[$i]) {
|
|
|
75ce05f |
+ print "($lengths[$i]";
|
|
|
75ce05f |
+ print ", $decimals[$i]" if $decimals[$i];
|
|
|
75ce05f |
+ print ")";
|
|
|
75ce05f |
+ }
|
|
|
75ce05f |
+ if (defined $names[$i+1]) {
|
|
|
75ce05f |
+ print ',';
|
|
|
75ce05f |
+ }
|
|
|
75ce05f |
+ print "\n";
|
|
|
75ce05f |
+ }
|
|
|
75ce05f |
+ print ")\n";
|
|
|
75ce05f |
+ }
|
|
|
75ce05f |
+ } else {
|
|
|
75ce05f |
+ $table->dump_records(%options) or print STDERR $table->errstr;
|
|
|
75ce05f |
+ }
|
|
|
75ce05f |
+ $table->close;
|
|
|
75ce05f |
+}
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+1;
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+__END__
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+=head1 NAME
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+dbfdump.pl - Dump the record of the dbf file
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+=head1 FORMAT
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+ dbfdump.pl [options] files
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+where options are
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+ --rs output record separator (default newline)
|
|
|
75ce05f |
+ --fs output field separator (default colon)
|
|
|
75ce05f |
+ --fields comma separated list of fields to print (default all)
|
|
|
75ce05f |
+ --undef string to print for NULL values (default empty)
|
|
|
75ce05f |
+ --memofile specifies unstandard name of attached memo file
|
|
|
75ce05f |
+ --memosep separator for dBase III dbt's (default \x1a\x1a)
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+ --nomemo do not try to read the memo (dbt/fpt) file
|
|
|
75ce05f |
+ --info print info about the file and fields
|
|
|
75ce05f |
+ with additional --SQL parameter, outputs the SQL create table
|
|
|
75ce05f |
+ --version print version of the XBase library
|
|
|
75ce05f |
+ --table output in nice table format (only available when
|
|
|
75ce05f |
+ Data::ShowTable is installed, overrides rs and fs)
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+=head1 SYNOPSIS
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+ dbfdump.pl -fields id,msg table.dbf
|
|
|
75ce05f |
+ dbfdump.pl -fs=' : ' table
|
|
|
75ce05f |
+ dbfdump.pl --nomemo file.dbf
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+ ssh user@host 'cat file.dbf.gz' | gunzip - | dbfdump.pl -
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+=head1 DESCRIPTION
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+Dbfdump prints to standard output the content of dbf files listed. By
|
|
|
75ce05f |
+default, it prints all fields, separated by colons, one record on
|
|
|
75ce05f |
+a line. The output record and column separators can be changed by
|
|
|
75ce05f |
+switches on the command line. You can also ask only for some fields to
|
|
|
75ce05f |
+be printed.
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+The content of associated memo files (dbf, fpt) is printed for memo
|
|
|
75ce05f |
+fields, unless you use the C<--nomemo> option.
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+You can specify reading the standard input by putting dash (-) instead
|
|
|
75ce05f |
+of file name.
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+=head1 AUTHOR
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+(c) 1998--1999 Jan Pazdziora, adelton@fi.muni.cz,
|
|
|
75ce05f |
+http://www.fi.muni.cz/~adelton/
|
|
|
75ce05f |
+at Faculty of Informatics, Masaryk University in Brno, Czech Republic
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+=head1 SEE ALSO
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+perl(1); XBase(3)
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+=cut
|
|
|
75ce05f |
+
|
|
|
75ce05f |
+EOBODY
|
|
|
75ce05f |
+
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/Changes DBD-XBase-0.241/Changes
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/Changes 2003-11-21 14:13:43.000000000 +0000
|
|
|
75ce05f |
+++ DBD-XBase-0.241/Changes 2006-03-16 22:09:11.000000000 +0000
|
|
|
75ce05f |
@@ -136,7 +136,7 @@
|
|
|
75ce05f |
|
|
|
75ce05f |
0.1551 Sat Jan 9 19:21:16 CET 2000
|
|
|
75ce05f |
|
|
|
75ce05f |
- dbfdump: Accepts --SQL modifier to --info, prints structure
|
|
|
75ce05f |
+ dbfdump.pl: Accepts --SQL modifier to --info, prints structure
|
|
|
75ce05f |
of the table as a create table SQL.
|
|
|
75ce05f |
|
|
|
75ce05f |
0.155 Sun Nov 7 15:43:59 CET 1999
|
|
|
75ce05f |
@@ -272,7 +272,7 @@
|
|
|
75ce05f |
XBase::Memo: we now reset next_for_append to point behind the
|
|
|
75ce05f |
end of the file, problem pointed out by Artem Belevich.
|
|
|
75ce05f |
|
|
|
75ce05f |
- dbfdump: option --table, --fields now handles intervals.
|
|
|
75ce05f |
+ dbfdump.pl: option --table, --fields now handles intervals.
|
|
|
75ce05f |
|
|
|
75ce05f |
t/2_read.t: fixed problem with order of fields in hash, patch
|
|
|
75ce05f |
by Andreas J. Koenig.
|
|
|
75ce05f |
@@ -301,7 +301,7 @@
|
|
|
75ce05f |
|
|
|
75ce05f |
XBase::SQL: fix of handling of double quoted strings.
|
|
|
75ce05f |
|
|
|
75ce05f |
- dbfdump: memosep and memofile options fixed.
|
|
|
75ce05f |
+ dbfdump.pl: memosep and memofile options fixed.
|
|
|
75ce05f |
|
|
|
75ce05f |
t/4_dbfdump.t: avoided using cat.
|
|
|
75ce05f |
|
|
|
75ce05f |
@@ -427,7 +427,7 @@
|
|
|
75ce05f |
|
|
|
75ce05f |
0.0632 Wed May 27 12:27:04 MET DST 1998
|
|
|
75ce05f |
|
|
|
75ce05f |
- Added --nomemo option to dbfdump. The list of entires is made
|
|
|
75ce05f |
+ Added --nomemo option to dbfdump.pl. The list of entires is made
|
|
|
75ce05f |
longer in any non-leaf page in ndx. Added check for the magic
|
|
|
75ce05f |
"FFFF0800" tag in dBaseIV dbt file when reading it.
|
|
|
75ce05f |
|
|
|
75ce05f |
@@ -479,7 +479,7 @@
|
|
|
75ce05f |
long selects. Method dump_records now prints directly,
|
|
|
75ce05f |
doesn't use get_all_records.
|
|
|
75ce05f |
|
|
|
75ce05f |
- Added parameter --info into the script dbfdump to print the
|
|
|
75ce05f |
+ Added parameter --info into the script dbfdump.pl to print the
|
|
|
75ce05f |
header info.
|
|
|
75ce05f |
|
|
|
75ce05f |
Changed way of determining the type of the dbt file after
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/INSTALL DBD-XBase-0.241/INSTALL
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/INSTALL 2003-04-03 18:02:37.000000000 +0100
|
|
|
75ce05f |
+++ DBD-XBase-0.241/INSTALL 2006-03-16 22:08:17.000000000 +0000
|
|
|
75ce05f |
@@ -43,7 +43,7 @@
|
|
|
75ce05f |
If you do not have make or you cannot run it (do you really want to
|
|
|
75ce05f |
use Perl on that machine?), just copy the content of the
|
|
|
75ce05f |
DBD-XBase-x.xxx/lib directory to wherever you want to have it. That
|
|
|
75ce05f |
-should work, even if it won't give you man pages and dbfdump/indexdump
|
|
|
75ce05f |
+should work, even if it won't give you man pages and dbfdump.pl/indexdump
|
|
|
75ce05f |
scripts.
|
|
|
75ce05f |
|
|
|
75ce05f |
If you use a platform supported by ActiveState and run ActiveState
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/lib/XBase/FAQ.pod DBD-XBase-0.241/lib/XBase/FAQ.pod
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/lib/XBase/FAQ.pod 2002-08-16 10:38:53.000000000 +0100
|
|
|
75ce05f |
+++ DBD-XBase-0.241/lib/XBase/FAQ.pod 2006-03-16 22:06:06.000000000 +0000
|
|
|
75ce05f |
@@ -175,11 +175,11 @@
|
|
|
75ce05f |
|
|
|
75ce05f |
to your script and you will see that it's not B<DBD::XBase> problem.
|
|
|
75ce05f |
|
|
|
75ce05f |
-=item The B<XBase.pm/dbfdump> stops after reading I<n> records ...
|
|
|
75ce05f |
+=item The B<XBase.pm/dbfdump.pl> stops after reading I<n> records ...
|
|
|
75ce05f |
|
|
|
75ce05f |
... why doesn't it read all I<10 x n> records?
|
|
|
75ce05f |
|
|
|
75ce05f |
-Check if the file isn't truncated. C<dbfdump -i file.dbf> will tell
|
|
|
75ce05f |
+Check if the file isn't truncated. C<dbfdump.pl -i file.dbf> will tell
|
|
|
75ce05f |
you the expected number of records and length of one record, like
|
|
|
75ce05f |
|
|
|
75ce05f |
Filename: file.dbf
|
|
|
75ce05f |
@@ -191,7 +191,7 @@
|
|
|
75ce05f |
Num fields: 40
|
|
|
75ce05f |
|
|
|
75ce05f |
So the expected length of the file is at least I<1313 + 65 * 1117>. If
|
|
|
75ce05f |
-it's shorter, you've got damaged file and B<XBase.pm/dbfdump> only
|
|
|
75ce05f |
+it's shorter, you've got damaged file and B<XBase.pm/dbfdump.pl> only
|
|
|
75ce05f |
reads as much rows as it can find in the dbf.
|
|
|
75ce05f |
|
|
|
75ce05f |
=item How is this B<DBD::XBase> related to B<DBD::ODBC>?
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/lib/XBase.pm DBD-XBase-0.241/lib/XBase.pm
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/lib/XBase.pm 2003-11-21 14:17:49.000000000 +0000
|
|
|
75ce05f |
+++ DBD-XBase-0.241/lib/XBase.pm 2006-03-16 22:05:32.000000000 +0000
|
|
|
75ce05f |
@@ -1341,7 +1341,7 @@
|
|
|
75ce05f |
$table->dump_records("fs" => " | ", "rs" => " <-+\n",
|
|
|
75ce05f |
"fields" => [ "id", "msg" ]);'
|
|
|
75ce05f |
|
|
|
75ce05f |
-Also note that there is a script dbfdump(1) that does the printing.
|
|
|
75ce05f |
+Also note that there is a script dbfdump.pl(1) that does the printing.
|
|
|
75ce05f |
|
|
|
75ce05f |
=head2 Errors and debugging
|
|
|
75ce05f |
|
|
|
75ce05f |
@@ -1423,7 +1423,7 @@
|
|
|
75ce05f |
=head1 SEE ALSO
|
|
|
75ce05f |
|
|
|
75ce05f |
perl(1); XBase::FAQ(3); DBD::XBase(3) and DBI(3) for DBI interface;
|
|
|
75ce05f |
-dbfdump(1)
|
|
|
75ce05f |
+dbfdump.pl(1)
|
|
|
75ce05f |
|
|
|
75ce05f |
=cut
|
|
|
75ce05f |
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/Makefile.PL DBD-XBase-0.241/Makefile.PL
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/Makefile.PL 2003-04-03 17:37:19.000000000 +0100
|
|
|
75ce05f |
+++ DBD-XBase-0.241/Makefile.PL 2006-03-16 22:20:20.000000000 +0000
|
|
|
75ce05f |
@@ -41,11 +41,11 @@
|
|
|
75ce05f |
'AUTHOR' => 'Jan Pazdziora (adelton@fi.muni.cz)',
|
|
|
75ce05f |
'ABSTRACT' => 'Reads and writes XBase (dbf) files, includes DBI support',
|
|
|
75ce05f |
) : ()),
|
|
|
75ce05f |
- 'PL_FILES' => { 'bin/dbfdump.PL' => 'bin/dbfdump',
|
|
|
75ce05f |
+ 'PL_FILES' => { 'bin/dbfdump.pl.PL' => 'bin/dbfdump.pl',
|
|
|
75ce05f |
'bin/indexdump.PL' => 'bin/indexdump' },
|
|
|
75ce05f |
- 'EXE_FILES' => [ 'bin/dbfdump', ' bin/indexdump' ],
|
|
|
75ce05f |
+ 'EXE_FILES' => [ 'bin/dbfdump.pl', ' bin/indexdump' ],
|
|
|
75ce05f |
'dist' => { COMPRESS => 'gzip -9f', SUFFIX => 'gz',
|
|
|
75ce05f |
POSTOP => 'mv $(DISTNAME)-$(VERSION).tar.gz ../' },
|
|
|
75ce05f |
- 'clean' => { FILES => 'bin/dbfdump bin/indexdump t/newtable.dbf t/newtable.dbt t/write.dbf t/write.dbt t/rooms1.dbf t/rooms1.cdx '},
|
|
|
75ce05f |
+ 'clean' => { FILES => 'bin/dbfdump.pl bin/indexdump t/newtable.dbf t/newtable.dbt t/write.dbf t/write.dbt t/rooms1.dbf t/rooms1.cdx '},
|
|
|
75ce05f |
);
|
|
|
75ce05f |
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/MANIFEST DBD-XBase-0.241/MANIFEST
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/MANIFEST 2003-07-07 19:30:41.000000000 +0100
|
|
|
75ce05f |
+++ DBD-XBase-0.241/MANIFEST 2006-03-16 22:20:06.000000000 +0000
|
|
|
75ce05f |
@@ -4,7 +4,7 @@
|
|
|
75ce05f |
Makefile.PL
|
|
|
75ce05f |
README
|
|
|
75ce05f |
ToDo
|
|
|
75ce05f |
-bin/dbfdump.PL
|
|
|
75ce05f |
+bin/dbfdump.pl.PL
|
|
|
75ce05f |
bin/indexdump.PL
|
|
|
75ce05f |
dbit/00base.t
|
|
|
75ce05f |
dbit/10dsnlist.t
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/new-XBase DBD-XBase-0.241/new-XBase
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/new-XBase 2001-02-06 10:44:13.000000000 +0000
|
|
|
75ce05f |
+++ DBD-XBase-0.241/new-XBase 2006-03-16 22:09:55.000000000 +0000
|
|
|
75ce05f |
@@ -395,7 +395,7 @@
|
|
|
75ce05f |
$table->dump_records("fs" => " | ", "rs" => " <-+\n",
|
|
|
75ce05f |
"fields" => [ "id", "msg" ]);'
|
|
|
75ce05f |
|
|
|
75ce05f |
-Also note that there is a command line script dbfdump(1) that does
|
|
|
75ce05f |
+Also note that there is a command line script dbfdump.pl(1) that does
|
|
|
75ce05f |
the printing.
|
|
|
75ce05f |
|
|
|
75ce05f |
=head1 Writing the data
|
|
|
75ce05f |
@@ -597,7 +597,7 @@
|
|
|
75ce05f |
|
|
|
75ce05f |
XBase::FAQ(3); XBase::Index(3);
|
|
|
75ce05f |
DBD::XBase(3) and DBI(3) for DBI interface;
|
|
|
75ce05f |
-dbfdump(1); perl(1)
|
|
|
75ce05f |
+dbfdump.pl(1); perl(1)
|
|
|
75ce05f |
|
|
|
75ce05f |
=cut
|
|
|
75ce05f |
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/README DBD-XBase-0.241/README
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/README 2003-04-03 18:02:47.000000000 +0100
|
|
|
75ce05f |
+++ DBD-XBase-0.241/README 2006-03-16 22:09:29.000000000 +0000
|
|
|
75ce05f |
@@ -48,7 +48,7 @@
|
|
|
75ce05f |
my $table = new XBase 'table.dbf';
|
|
|
75ce05f |
my @data = $table->get_record(0);
|
|
|
75ce05f |
|
|
|
75ce05f |
- The distribution also includes a dbfdump script that prints
|
|
|
75ce05f |
+ The distribution also includes a dbfdump.pl script that prints
|
|
|
75ce05f |
the content of the table in readable form.
|
|
|
75ce05f |
|
|
|
75ce05f |
|
|
|
75ce05f |
@@ -75,7 +75,7 @@
|
|
|
75ce05f |
native XBase engines produce data incompatible with this
|
|
|
75ce05f |
module.
|
|
|
75ce05f |
|
|
|
75ce05f |
- Man pages for XBase, DBD::XBase, dbfdump, XBase::Index and
|
|
|
75ce05f |
+ Man pages for XBase, DBD::XBase, dbfdump.pl, XBase::Index and
|
|
|
75ce05f |
XBase::SDBM are included, examples of little scripts can also
|
|
|
75ce05f |
be found in eg/ directory of the distribution. Read the DBI
|
|
|
75ce05f |
man page for DBI specific issues, and the XBase::FAQ page.
|
|
|
75ce05f |
diff -ruN DBD-XBase-0.241-orig/t/4_dbfdump.t DBD-XBase-0.241/t/4_dbfdump.t
|
|
|
75ce05f |
--- DBD-XBase-0.241-orig/t/4_dbfdump.t 2002-05-15 17:18:09.000000000 +0100
|
|
|
75ce05f |
+++ DBD-XBase-0.241/t/4_dbfdump.t 2006-03-16 22:07:14.000000000 +0000
|
|
|
75ce05f |
@@ -9,13 +9,13 @@
|
|
|
75ce05f |
use ExtUtils::testlib;
|
|
|
75ce05f |
my $libs = join " -I", '', @INC;
|
|
|
75ce05f |
|
|
|
75ce05f |
-my $dbfdump = "$dir/blib/script/dbfdump";
|
|
|
75ce05f |
+my $dbfdump = "$dir/blib/script/dbfdump.pl";
|
|
|
75ce05f |
|
|
|
75ce05f |
my $expected = join '', <DATA>;
|
|
|
75ce05f |
my $result = '';
|
|
|
75ce05f |
|
|
|
75ce05f |
my $command = qq!$^X $libs $dbfdump "$dir/t/rooms.dbf"!;
|
|
|
75ce05f |
-print "Running dbfdump rooms.dbf: $command\n";
|
|
|
75ce05f |
+print "Running dbfdump.pl rooms.dbf: $command\n";
|
|
|
75ce05f |
$result = `$command`;
|
|
|
75ce05f |
|
|
|
75ce05f |
if ($result ne $expected)
|
|
|
75ce05f |
@@ -23,7 +23,7 @@
|
|
|
75ce05f |
print "ok 1\n";
|
|
|
75ce05f |
|
|
|
75ce05f |
$command = qq!$^X $libs $dbfdump -- - < "$dir/t/rooms.dbf"!;
|
|
|
75ce05f |
-print "Running stdin dbfdump < rooms.dbf: $command\n";
|
|
|
75ce05f |
+print "Running stdin dbfdump.pl < rooms.dbf: $command\n";
|
|
|
75ce05f |
$result = `$command`;
|
|
|
75ce05f |
|
|
|
75ce05f |
if ($result ne $expected)
|