" " setzen, bzw. weglassen
Flo
- perl
0 Cheatah
Hallo!
Ich möchte in Perl Spalten aus einer Datenbank einlesen. Wenn ein Wert in einem Datenfeld steht, soll er in Anführungszeichen stehen, wenn das Feld leer ist, soll es leer bleiben (ohne die " ").
Wenn es jemanden interessiert, soweit wie unten bin ich im Moment...
Vielen Dank für die Antworten
Florian
___________________________________________________________________
while($db->FetchRow()) # Tabelle zeilenweise einlesen
{
( $PRUEFGR, $BENGR, $PDID, $TFID, $TBID, $FORMELID, $PARM1, $PARM2, $PARM3 ) = $db->Data(); # Daten aus den Datenfeldern lesen
if length ($PRUEFGR) >0 $PRUEFGR=join("",",$PRUEFGR,");
$newline = join (",",$PRUEFGR, $BENGR, $PDID, $TFID, $TBID, $FORMELID, $PARM1, $PARM2, $PARM3,"\n");
print OUTFILE $newline;
Hi,
Wenn ein Wert in einem Datenfeld steht, soll er in Anführungszeichen stehen, wenn das Feld leer ist, soll es leer bleiben (ohne die " ").
Leseempfehlung:
perldoc -f map
( $PRUEFGR, $BENGR, $PDID, $TFID, $TBID, $FORMELID, $PARM1, $PARM2, $PARM3 ) = $db->Data(); # Daten aus den Datenfeldern lesen
*örgs* Leicht unleserlich... konsultiere bitte auch mal
perldoc perlstyle
zu dem Thema, wann Variablennamen groß sein sollten und wann nicht :-)
if length ($PRUEFGR) >0 $PRUEFGR=join("",",$PRUEFGR,");
Hier wären mindestens runde, und wenn Du das if nicht nach hinten setzt acuh geschweifte Klammern angebracht. Gleiche Lektüre.
$newline = join (",",$PRUEFGR, $BENGR, $PDID, $TFID, $TBID, $FORMELID, $PARM1, $PARM2, $PARM3,"\n");
Möchtest Du nicht lieber ein Array anlegen? Ferner: Das "\n" möchtest Du vermutlich nicht durch Komma abtrennen, oder? Vergiss danach aber nicht...
print OUTFILE $newline;
...das Newline nach dem $newline ;-)
Cheatah