Hi,

I get a strange warning in the following part of my code:

  my @zeile;
  while (@zeile = $sth->fetchrow_array()) {
    print WL "@zeile\n";
  }

For every Row I get:

        Use of uninitialized value at ./wertelisten.pl line 23

How can it be undefined? On the other hand the program works find, so I
could just remove the -w to ignore the warnings, but I do not like this
solution very much, since -w really helps me a lot...

Peter

P.S: with "print WL $zeile[0];" there are no warnings...

P.P.S: For those of you who want to see the complete code:

#!/usr/local/bin/perl -w

use DBI;
use strict;

$| = 1;
$ENV{'NLS_DATE_FORMAT'} = "DD-MM-YYYY";

my @wertelisten = qw{ t_tarife t_besicherungsarten t_produktklassen };

my $dbh = 
  DBI->connect("DBI:Oracle:XXX","xxx","xyz")
  or die ("Cannot connect to Oracle Database: $DBI::errstr\n");

for my $wl ( @wertelisten ) {
  open WL, ">out/$wl";
  my $sth = $dbh->prepare(qq{
    select * from $wl
  }) or die "Cannot prepare statement\n";
  $sth->execute or die "Cannot execute statement";
  my @zeile;
  while (@zeile = $sth->fetchrow_array()) {
    print WL "@zeile\n";
  }
  $sth->finish;
  close WL
}

$dbh->disconnect() or warn "Disconnection failed: $DBI::errstr\n";

Reply via email to