On Thu 03 Apr 2003 14:21, Tim Bunce <[EMAIL PROTECTED]> wrote: > On Thu, Apr 03, 2003 at 11:02:19AM +0200, H.Merijn Brand wrote: > > On Thu 27 Mar 2003 19:13, Tim Bunce <[EMAIL PROTECTED]> wrote: > > > file: $CPAN/authors/id/T/TI/TIMB/DBD-Oracle-1.14.tar.gz > > > size: 199667 bytes > > > md5: ec364509df5dfd57a4c05e2c410f358f > > > > > > =head1 Changes in DBD-Oracle 1.14 27th March 2003 > > > > > > NOTE: OCI 7 and Oraperl will not be supported in future releases. > > > > > > Implemented inserting NULL values into LOB fields using placeholders, > > > (sponsored by bayerwald-fenster.de thanks to Bernhard Donaubauer). > > > Fixed broken get_info() due to missing GetInfo.pm #2274. > > > Fixed compiler warnings/errors thanks to H.Merijn Brand. > > > Fixed bind_param with array ref to croak not warn, reported by Steven Roels. > > > Fixed "Bad hash" error using $sth->{ParamValues} if there were no placeholders. > > > Fixed Makefile.PL for more HPUX/Oracle configurations thanks to Lincoln Baxter. > > > Simplified MacOS X build thanks to Brook Schofield, see README.macosx. > > > Updated README.hpux thanks to H.Merijn Brand, Jay Strauss, and Lincoln Baxter. > > > Updated README and README.utf8 with minor changes thanks to Alexey Mahotkin. > > > > Can it be that 1.14 (1.13) suddenly returns double quoted table names from > > $dbh->tables ()? I don *not* think that this is a good idea, since it will > > break a lot of code (mine for example) > > > > If this is new behaviour (which I did not see in the change list, but I might > > just not look good enough), either revert it, or enable a connection option to > > disable the quotes again. > > It's in interaction between both DBD::Oracle and DBI changes: > > =head1 Changes in DBD-Oracle 1.14 27th March 2003 > > Fixed broken get_info() due to missing GetInfo.pm #2274. > > =head1 Changes in DBD-Oracle 1.13 14th March 2003 > > Updated table_info and added get_info, foreign_key_info thanks to Steffen Goeldner. > > =head2 Changes in DBI 1.21, 7th February 2002 > > Changed tables() to use quote_indentifier() if the driver returns a > true value for $dbh->get_info(29) # SQL_IDENTIFIER_QUOTE_CHAR > > =cut > > I believe that, technically, the names from tables() should be > passed through the quote_identifier() method. > > In what way is it causing problems for you?
Like in the next snippet. I hope there are not many more, but I know there will be, because I use this a lot. Why? Because all these scripts have to be database independ[ea]nt (Oracle & Unify) --8<--- my $dbh = DBDlogon (1); foreach my $tbl ($dbh->tables (undef, $schema, undef, undef)) { # print STDERR " [ $tbl ]\n"; $tbl =~ s/"//g; # Ahhhrg, since DBD-Oracle-1.14? $tbl =~ s/(\..*)/\L$1/; $tbl =~ $pat or next; $tbl =~ m/^PROLEP\.lla_/ and next; $tbl eq "PROBEV.spd" and next; # binary data $tbl =~ m/^$schema\./ or next; print STDERR " $tbl ... \n"; { my ($n, $N) = (0, 0); my $sts = prepex ("select * from $tbl"); my @f = @{$sts->{NAME_lc}}; my %f = map { $_ => 1 } @f; my %n = map { $_ => 0 } @f; $sts->bind_columns ([EMAIL PROTECTED]@f}); while ($sts->fetch) { -->8--- > I could add an attribute to tables() to force it to skip the quoting. That would solve my problem instantly, because the connect/logon procedure is centralized in a module, so I have to add that attrib only once. -- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1, 5.8.0 & 632 on HP-UX 10.20 & 11.00, AIX 4.2, AIX 4.3, WinNT 4, Win2K pro & WinCE 2.11 often with Tk800.024 &/| DBD-Unify ftp://ftp.funet.fi/pub/languages/perl/CPAN/authors/id/H/HM/HMBRAND/