Schrift
[thread]3681[/thread]

Ergebnismenge formatieren



<< >> 5 Einträge, 1 Seite
ralli
 2006-04-25 11:02
#34339 #34339
User since
2006-04-25
2 Artikel
BenutzerIn
[default_avatar]
Guten Tag,

ich möchte die Textausgabe einer Ergebnismenge auf die Konsole mit Format formatieren, bekomme es aber nicht hin, es in die Schleife einzubauen. Dazu müssen ja Platzhalter als Schablone gestzt werden. Und irgenwie dann mit Write ausgeführt.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/usr/bin/perl

use DBI;

system("clear");

# Datenbank

$datenbank = "info";

# Datenbankhost

$datenbankhost = "localhost";

# Datenbankusername

$datenbankuser = "root";

# Datenbankpasswort

$datenbankpw = "";

$dbh = DBI->connect("DBI:mysql:$datenbank:$datenbankhost","$datenbankuser","$datenbankpw")

|| scripterror ("Fehler bei der Datenbankverbindung aufgetreten.");

my $sql = qq{select * from hasbergen};

my $sth = $dbh->prepare( $sql );

$sth->execute();

while(@ergebnis=$sth->fetchrow_array)

{
print $ergebnis[0]." ".$ergebnis[1]." ".$ergebnis[2]." ".$ergebnis[3]." \n";
}

print " \n";

$sth->finish();

$dbh->disconnect();


Habe schon alles ausprobiert und bekomme es nicht ohne Hilfe hin.

Gruß Ralli
renee
 2006-04-25 11:40
#34340 #34340
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
1
2
3
while(my @ergebnis=$sth->fetchrow_array){
print sprintf("%12s | %15s | %10s | %12s\n",$ergebnis[0..3]);
}


Wenn es nicht so ungefähr dem entspricht, was Du haben willst, dann erklär es bitte nochmal (Vielleicht mit ein paar Beispieldaten).

Noch ein allgemeiner Hinweis: Du solltest Wiki:use strict verwenden und Fehlerbehandlung machen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
ralli
 2006-04-25 19:01
#34341 #34341
User since
2006-04-25
2 Artikel
BenutzerIn
[default_avatar]
Hallo renee,

danke für Deine Hilfe. Ich habe die Funktion format gemeint. Und so geht es:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/perl

use strict;

use DBI;

system("clear");

my ($datenbank, $datenbankhost, $datenbankuser, $datenbankpw);

my ($dbh, $sql, $sth);

my (@ergebnis);

# Datenbank

$datenbank = "info";

# Datenbankhost

$datenbankhost = "localhost";

# Datenbankusername

$datenbankuser = "root";

# Datenbankpasswort

$datenbankpw = "";

$dbh = DBI->connect("DBI:mysql:$datenbank:$datenbankhost","$datenbankuser","$datenbankpw")

|| scripterror ("Fehler bei der Datenbankverbindung aufgetreten.");

$sql = qq{select * from hasbergen where Name = "Mustermann"};

$sth = $dbh->prepare( $sql );

$sth->execute();

while(@ergebnis = $sth->fetchrow_array){

format STDOUT =
@<<<<<<<<<<<<<<<<<<<<<<<<< @<<<<<<<<<<<<<<<<<<<<<<<<< @<<<<<<<<<<<<<<<<<<<<<<<<< @<<<<< @<<<<<<<<<<<< @<<<<<<<< @<<<<<<<<<<<<
$ergebnis[0], $ergebnis[1], $ergebnis[2], $ergebnis[3], $ergebnis[4], $ergebnis[5], $ergebnis[6], $ergebnis[7]
.
write;

}

print " \n";

$sth->finish();

$dbh->disconnect();

Ich habe die globalen Variablen nun gleich am Anfang des Scriptes deklariert. Ist das guter Stil oder sollten sie erst dann deklariert werden, wenn ihnen ein Wert zugwiesen wird? Das Pragma strict habe ich eingefügt.

Gruß Ralli
renee
 2006-04-25 19:52
#34342 #34342
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Man sollte die Definition immer so kurzfristig wie möglich machen. Hier also erst dann wenn der Wert zugewiesen wird...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Strat
 2006-04-26 16:36
#34343 #34343
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
eine sehr gute alternative zu den antiquierten Perl-Formaten findest du auf CPAN:Perl6::Form
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< >> 5 Einträge, 1 Seite



View all threads created 2006-04-25 11:02.