develooper Front page | perl.beginners | Postings from March 2002

DBI-> connect load datafile ?

Thread Next
From:
Brian Volk
Date:
March 5, 2002 21:44
Subject:
DBI-> connect load datafile ?
Message ID:
3C85AD38.9070608@bvolk.com
      Hi All,

I'm having trouble loading a datafile into MySQL database via perl.  I 
have a couple of scripts working but I get stuck when I try to load a 
file....  Here is what I have so far...  How far off am I?? :-)     

 $dbh->do("load data local infile $dbh->quote(/home/misc/cell_sql.csv) 
into table use_perl");

-------------------- this example works --------------------------------

      #!/usr/bin/perl

      use strict;
      use DBI();

      # Connect to the database.
      my $dbh = DBI->connect("DBI:mysql:database=test;host=localhost",
                             "username", "password",
                             {'RaiseError' => 1});

      # Drop table 'foo'. This may fail, if 'foo' doesn't exist.
      # Thus we put an eval around it.
      eval { $dbh->do("DROP TABLE foo") };
      print "Dropping foo failed: $@\n" if $@;

      # Create a new table 'foo'. This must not fail, thus we don't
      # catch errors.
      $dbh->do("CREATE TABLE foo (id INTEGER, name VARCHAR(20))");

      # INSERT some data into 'foo'. We are using $dbh->quote() for
      # quoting the name.
      $dbh->do("INSERT INTO foo VALUES (1, " . $dbh->quote("Tim") . ")");

      # Same thing, but using placeholders
      $dbh->do("INSERT INTO foo VALUES (?, ?)", undef, 2, "Jochen");

      # Now retrieve data from the table.
      my $sth = $dbh->prepare("SELECT * FROM foo");
      $sth->execute();
      while (my $ref = $sth->fetchrow_hashref()) {
        print "Found a row: id = $ref->{'id'}, name = $ref->{'name'}\n";
      }
      $sth->finish();

      # Disconnect from the database.
      $dbh->disconnect();
--------------------------------------------------------------

Thanks!!

Brian
bvolk@bvolk.com



Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About