Para hacer un inserto con Class :: DBI, sólo tiene que hacer:¿Cómo puedo hacer una actualización en Class :: DBI sin seleccionar primero un registro?
my $object = Object::DB->insert({ a => 1, b => 2, c => 3, ...});
pero no hay tal cosa para la actualización. Lo mejor que podía llegar a es seleccionar el registro primero y luego actualizarlo:
my $object = Object::DB->retrieve($id);
my $object->set(a => 1, b => 2, c => 3, ...};
$object->update;
Esto no es eficiente ya que tengo que hacer un SELECT en primer lugar, y luego un UPDATE en lugar de sólo una actualización.
¿Hay una mejor manera de hacer esto con Class :: DBI? No quiero hacer 42 $ object-> a (1), $ object-> b (2), etc., $ object-> update;
DBIx :: Class hace esto fácil. Realmente deberías considerar alejarte de CDBI. – jrockway