1 --- ../AnyData-0.05/DBD/AnyData.pm Tue Jul 17 12:31:44 2001
2 +++ DBD/AnyData.pm Wed Oct 31 13:08:37 2001
4 # PARSE EXTRA STRINGS IN DSN HERE
5 # Process attributes from the DSN; we assume ODBC syntax
6 # here, that is, the DSN looks like var1=val1;...;varN=valN
8 + my ($var, $defaultselector, %defaultflags);
9 $dbh->STORE('f_dir','./');
10 foreach $var (split(/;/, $dbname)) {
11 #######################################################
13 #######################################################
14 # Patch from Wes Hardaker
15 #######################################################
16 - } elsif( $var =~ m/^\s*?default=(\S+)/i ){
17 - # Default catalog selector to use
18 - $dbh->func('__default',$1, 'ad_catalog');
19 + } elsif( $var =~ m/^\s*?ad_default=(\S+)/i ){
20 + # Default catalog selector to use
21 + $defaultselector = $1;
22 + } elsif( $defaultselector &&
23 + $var =~ m/^\s*?ad_${defaultselector}_(\S+)=(\S+)/i ) {
24 + # Add to selector flags.
25 + $defaultflags{$1} = $2;
26 #######################################################
27 } elsif ($var =~ /(.*?)=(.*)/) {
30 $dbh->STORE($key, $val);
33 + if ($defaultselector) {
34 + $dbh->func('__default', $defaultselector, '', \%defaultflags,
37 ### $dbh->func('read_catalog_from_disk');
41 my($self, $data, $fields) = @_;
42 my $requested_cols=[];
43 my @rc = $data->{f_stmt}->columns();
44 - push @$requested_cols, $_->{column} for @rc;
45 + push @$requested_cols, $_->{name} for @rc;
46 unshift @$fields, $requested_cols;
47 $self->{ad}->push_row(@$fields);