Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : perl+mysql



Badsteve
09-02-2003, 14:09
Wie kann ich mit Perl ein datenfeld mit dem Typ text in einer Tabelle auslesen. Ich bekomme das nicht hin . Char geht aber die "text"-Felder werden ausgelassen.

Danke

the_brain
10-02-2003, 13:45
poste mal den jetzigen code den du benutzt. vielleicht kann ich dir da helfen.

Badsteve
10-02-2003, 15:02
#!/usr/bin/perl

use strict;
use warnings;
use DBI;

my $dbname="gbuch";
my $username="root";
my $pw="";
my $sql;

my $data1 = "DBI:mysql:$dbname";
my $data2 = DBI->connect($data1, $username, $pw, {RaiseError => 1}) || die ("Hilfe");

$sql="SELECT * FROM eintraege";
my $abfr1=$data2->prepare($sql);
$abfr1->execute;

my @ergf;
while( @ergf = $abfr1->fetchrow_array)
{
print $ergf[0], "\n";
print $ergf[1], "\n";
print $ergf[2], "\n";
}

$abfr1-> finish;

$data2->disconnect;


ich habe das erstmal zum testen fast abgeschrieben.

the_brain
11-02-2003, 09:00
Original geschrieben von Badsteve


#!/usr/bin/perl

use strict;
use warnings;
use DBI;

my $dbname="gbuch";
my $username="root";
my $pw="";
my $sql;

my $data1 = "DBI:mysql:$dbname";
my $data2 = DBI->connect($data1, $username, $pw, {RaiseError => 1}) || die ("Hilfe");

$sql="SELECT * FROM eintraege";
my $abfr1=$data2->prepare($sql);
$abfr1->execute(); <----- hier evtl die klammern, aber wenns auch so geht

my @ergf;
while( @ergf = $abfr1->fetchrow_array)
{
print $ergf[0], "\n";
print $ergf[1], "\n";
print $ergf[2], "\n";
}

$abfr1-> finish;

$data2->disconnect;


ich habe das erstmal zum testen fast abgeschrieben.

also meinermeinung nach müsste das so gehen, denn ich machs genauso :-)
haste nochmal die definition deiner tables?

oder bekommste in der error_log vom apache irgendwelche meldungen?

tomes
11-02-2003, 18:23
mit DBD::mysql versucht ? Das benutze ich immer fuer mysql.
Siehe Spriptsprachen FAQ ;)
Vielleicht fehlen auch ein paar Klammern nach fetchrow_array() ?
Im uebrigen soltest du mit print $ergf[<text-feld-name>] auch direkt darauf zugreifen koennen.

T;o)Mes

Badsteve
12-02-2003, 19:25
danke für die Tipps ich habe im Moment nicht so viel Zeit mich damit zu befassen. Aber Anfang der Woche werde ich mich mal wieder ransetzen.