Per fare un inserto con Class :: DBI, si può semplicemente fare:Come posso eseguire un aggiornamento in Class :: DBI senza prima selezionare un record?
my $object = Object::DB->insert({ a => 1, b => 2, c => 3, ...});
ma non v'è nulla di simile per l'aggiornamento. Il meglio che ho potuto venire in mente è la selezione del primo record poi aggiornarlo:
my $object = Object::DB->retrieve($id);
my $object->set(a => 1, b => 2, c => 3, ...};
$object->update;
Questo non è efficiente, in quanto devo fare un SELECT prima, e poi un UPDATE invece di uno solo UPDATE.
C'è un modo migliore per farlo con Class :: DBI? Non voglio fare 42 $ oggetto-> a (1), $ oggetto-> b (2), ecc., $ Oggetto-> aggiornamento;
DBIx :: Class rende questo facile. Dovresti davvero prendere in considerazione l'idea di allontanarti da CDBI. – jrockway