/ / Wie kann ich Array-Daten in MySQL in Perl einfügen? - Perl, einfügen, dbi

Wie kann ich Array-Daten in Perl in MySQL einfügen? - Perl, einfügen, dbi

Ich analysiere eine Textdatei mit dem folgenden Skript.

Wie füge ich die Array-Daten in eine MySQL-Tabelle ein?

Ich habe bereits die Perl MySQL DBI-Verbindungsmethode gelernt. Und ich kann mich erfolgreich mit der lokalen MySQL-Datenbank verbinden. Ich kann die Tabelle mit der MySQL-Kommandozeile erstellen.

#!C:Perlbinperl.exe
use strict;
use warnings;

while ( <DATA> ) {
my @rocks = split(/s+/, $_);

foreach my $rock (@rocks) {

$rock = "t$rock "; # put a tab in front of each element of @rocks

$rock .= "n"; # put a newline on the end of each

print $rock ;
}
}

__DATA__
A B C D
E F G H

Ich will das Tabelle Ergebnis durchsuchen.

Item1 Item2 Itme3 Item4  A B C D  E F G H

Antworten:

8 für die Antwort № 1
use strict;
use warnings;
use DBI;

my $dbh = DBI->connect(
"DBI:mysql:database=test;host=localhost",
"root",
"YOUR_PASSWORD",
{ RaiseError => 1, AutoCommit => 1 },
);

my $sql = "INSERT INTO foo (Item1,Item2,Item3,Item4) VALUES (?,?,?,?)";
my $sth = $dbh->prepare($sql);

while (<DATA>){
chomp;
my @vals = split /s+/, $_;
$sth->execute(@vals);
}

__END__
A B C D
E F G H