pl: Objekteigenschaften in Datenbank speichern

Beitrag lesen

Nur am Rande: In Perl gibt es den Hash Slice womit man Feldnamen mit den dazugegörigen Values zweckmäßig verbindet:

@fields = qw(isbn author year);     # Feldnamen, Eigenschaften
my @qm = map{"?"}1..scalar @fields; # Platzhalter f. Insert
$dbh->do(qq(
   insert into books (@{[join ',', @fields]}) values(@{[join ',', @qm]})
 ),{}, @book{"@fields"});

Womit man das Array mit den Feldnamen/Eignschaften zentral halten kann. Wichtig ist es, in der Tabelle Defaultwerte zu setzen insbesondere bei Erweiterungen. Ansonsten hat man nur noch ein Array was im Code bei Veränderungen anzupassen wäre.