Re: ltp - first patch

From: Martin Schulze (joey@infodrom.org)
Date: Thu May 09 2002 - 10:49:24 CEST


Alexander Wirt wrote:
> Ich habe jetzt quasi als Vorschau die erste Funktion (--night) und die
> Hilfe ausgabe modifiziert und auf Funktion geprüft. So in der Art würden
> die folgenden Patches auch sein. (Immer eine Funktion nach dem anderen)
> Ausserdem würde ich das script ganz gerne auf getopt und pod
> dokumentation umstellen aber das ist meine private wishlist.

Kein pod bitte, das macht den Code unleserlich.

getopt... hmm... bin ich in C ein Freund von aber in Perl nicht, da
sehe ich Uebersichtlichkeit schwinden, das macht die Wartung wieder
umstaendlicher, was wieder mehr Aufwand bedeutet.

Ich habe mit dem Patch noch zwei Probleme:

> - $query .= " AND nightplace = '$loc'" if ($loc);
> - $query .= " ORDER BY name";
> -
> - $sth = $dbh->prepare($query);
> - if ($sth && ($rc = $sth->execute) > 0) {
> +
> + my $sth = $dbh->prepare(q{
> + select name,email,project,nightplace FROM person
> + WHERE upper(nightplace) like upper(?) ORDER BY name
> + }) or die "Can't prepare query: $DBI::errstr\n";
> +
> + unless ($loc) { $loc = '%'; }

Das skaliert nicht, wenn die Queries komplizierter werden und Stueck
fuer Stueck zusammengesetzt werden.

So wie hier z.B.:

Darueberhinaus sehe ich nicht, dass sinnvoll ist, immer
upper(nightplace) LIKE upper(%) im Query zu haben, wenn
kein spezieller Schlafplatz angegeben wurde.

> + $sth->execute($loc) or die "Can't execute query: $DBI::errstr\n";

Ok, das scheint sinnvoll zu sein.

Gruesse,

        Joey

-- 
Never trust an operating system you don't have source for!



This archive was generated by hypermail 2.1.3 : Thu May 09 2002 - 10:57:12 CEST