blob: 56ed3bbe4c37fd2b6fb2bfae57c521e605aee20d [file] [log] [blame]
--- ../AnyData-0.05/DBD/AnyData.pm Tue Jul 17 12:31:44 2001
+++ DBD/AnyData.pm Wed Oct 31 13:08:37 2001
@@ -63,7 +63,7 @@
# PARSE EXTRA STRINGS IN DSN HERE
# Process attributes from the DSN; we assume ODBC syntax
# here, that is, the DSN looks like var1=val1;...;varN=valN
- my $var;
+ my ($var, $defaultselector, %defaultflags);
$dbh->STORE('f_dir','./');
foreach $var (split(/;/, $dbname)) {
#######################################################
@@ -80,9 +80,13 @@
#######################################################
# Patch from Wes Hardaker
#######################################################
- } elsif( $var =~ m/^\s*?default=(\S+)/i ){
- # Default catalog selector to use
- $dbh->func('__default',$1, 'ad_catalog');
+ } elsif( $var =~ m/^\s*?ad_default=(\S+)/i ){
+ # Default catalog selector to use
+ $defaultselector = $1;
+ } elsif( $defaultselector &&
+ $var =~ m/^\s*?ad_${defaultselector}_(\S+)=(\S+)/i ) {
+ # Add to selector flags.
+ $defaultflags{$1} = $2;
#######################################################
} elsif ($var =~ /(.*?)=(.*)/) {
my $key = $1;
@@ -90,6 +94,10 @@
$dbh->STORE($key, $val);
}
}
+ if ($defaultselector) {
+ $dbh->func('__default', $defaultselector, '', \%defaultflags,
+ 'ad_catalog');
+ }
### $dbh->func('read_catalog_from_disk');
$dbh;
}
@@ -520,7 +528,7 @@
my($self, $data, $fields) = @_;
my $requested_cols=[];
my @rc = $data->{f_stmt}->columns();
- push @$requested_cols, $_->{column} for @rc;
+ push @$requested_cols, $_->{name} for @rc;
unshift @$fields, $requested_cols;
$self->{ad}->push_row(@$fields);
1;