From: | Gunnar Wolf <gwolf(at)campus(dot)iztacala(dot)unam(dot)mx> |
---|---|
To: | "Diana Maritza Cardona T(dot)" <dcardon3(at)eafit(dot)edu(dot)co> |
Cc: | pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx |
Subject: | Re: [Pgsql-ayuda] Rollback.. |
Date: | 2002-10-07 14:02:11 |
Message-ID: | Pine.BSO.4.44.0210070855150.26471-100000@campus.iztacala.unam.mx |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
> Alguien sabe, si Postgresql tiene Rollback????
>
> Y si puedo hacer una recuperacion deesde los WAL, teniendo en cuenta
> que al recuperar la información tendría que deshacer o hacer rollback
> a aquello que no se alcanzó a confirmar antes de que ocurriera la
> falla???
Claro que lo tiene.
Ahora, para recuperar, depende cómo estés usando la BD. Si iniciaste tu
conexión en modo AutoCommit, pues... A menos que deshabilites ese modo,
las transacciones se registran inmediata y permanentemente (al menos,
hasta donde entiendo). Por ejemplo, en Perl:
==============================================================
use DBI;
$dbh = DBI->connect('dbi:Pg:dbname=mibd','user','passwd',
{AutoCommit => 0,
# otras opciones...
}) or die 'No pude establecer la sesión';
# Borramos todo...
$dbh->do('DELETE FROM mitabla');
# Acá no mostrará ningún registro - mitabla está vacía
muestraTabla();
# Rollback...
$dbh->rollback;
# Y acá tienes todos los registros.
muestraTabla();
# Borramos de nuevo...
$dbh->do('DELETE FROM mitabla');
# Commit
$dbh->commit;
# No muestra nada - y esta vez es permanente.
muestraTabla();
sub muestraTabla {
my $datos = $dbh->selectall_arrayref('SELECT * FROM mitabla');
foreach my $i (@$datos) {
print join(', ',@$i);
}
}
==============================================================
--
Gunnar Wolf - gwolf(at)campus(dot)iztacala(dot)unam(dot)mx - (+52-55)5623-1118
PGP key 1024D/8BB527AF 2001-10-23
Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF
From | Date | Subject | |
---|---|---|---|
Next Message | Sebastian Alvarez | 2002-10-08 13:13:10 | [Pgsql-ayuda] Modulo apache |
Previous Message | sondrobe | 2002-10-05 00:31:49 | [Pgsql-ayuda] Estructuras de búsqueda |