domingo, 18 de octubre de 2009

transacciones

Transacciones

Oracle admite transacciones definido por el estándar SQL. Una transacción es una secuencia de instrucciones SQL que Oracle trata como una sola unidad de trabajo. Tan pronto como se conecta a la base de datos con sql/plus, la operación comienza. Una vez que la transacción comienza, todos los LMD de SQL (lenguaje de manipulación de datos) comando que posteriormente se convierte en una parte de esta transacción. Una transacción termina cuando se desconecta de la base de datos, o cuando se emite un comando COMMIT o ROLLBACK.
COMMIT hace permanentes los cambios de base de datos que realizó durante la transacción actual. Hasta que confirmar sus cambios, otros usuarios no pueden ver. ROLLBACK termina la transacción actual y deshace los cambios hechos desde la operación comenzó.
Después de la transacción en curso ha terminado con un COMMIT o ROLLBACK, la primera instrucción SQL ejecutable que posteriormente cuestión se iniciará automáticamente otra transacción.
Por ejemplo, los comandos SQL siguientes tienen el efecto final de insertar en la tupla de la tabla T (3, 4), pero no es (1, 2):
Insertar en los valores R (1, 2);
Desmantelamiento;
Insertar en los valores de R (3, 4);
Cometer;
Durante el uso interactivo con sql/plus, Oracle también admite una opción de confirmación automática. Con esta opción establecida en ON cada sentencia SQL individual es tratada como una transacción se confirma automáticamente justo después de su ejecución. El usuario puede cambiar la opción de AUTOCOMMIT escribiendo
SET AUTOCOMMIT ON
O
SET AUTOCOMMIT OFF
Mientras que al escribir
MOSTRAR TODOS
Un usuario puede ver la configuración actual de la opción (incluyendo las otras).
Las mismas reglas para la designación final de la transacción (commit / rollback) y el comienzo de la misma (que es implícita y se inicia justo después del último COMMIT / ROLLBACK) se aplican a los programadores interactuar con Oracle utilizando Pro * C o JDBC. Fíjese que aunque Pro * C no admite la opción de AUTOCOMMIT JDBC mientras que hace y tiene una opción predeterminada AUTOCOMMMIT en ON. Así, un programador necesita para ejecutar COMMIT / ROLLBACK en Pro * C, mientras que en JDBC, un usuario puede hacer uso de la AUTOCOMMIT y no especifica de forma expresa, cuando una operación se inicia o finaliza. Para más detalles, consulte las secciones respectivas:
________________________________________
Oracle también admite el comando SAVEPOINT. El comando SAVEPOINT establece un punto nombrado que marca el punto actual en el procesamiento de una transacción. Este punto de retorno puede ser usado en conjunción con el comando ROLLBACK TO para deshacer las partes de una transacción.
Por ejemplo, los comandos siguientes tienen el efecto final de la inserción en las tulpas de la tabla T (5, 6) y (11, 12), pero no (7, 8) o (9, 10):
Insertar en los valores de R (5, 6);
my_sp_1 punto de almacenamiento;
Insertar en los valores de R (7, 8);
my_sp_2 punto de almacenamiento;
Insertar en los valores de R (9, 10);
Reversión a my_sp_1;
Insertar en los valores de R (11, 12);
Cometer;

1 comentario:

  1. Slots at Lucky Club Casino UK
    Lucky Club Casino is a licensed and regulated online casino offering slots, video poker, casino games and much luckyclub.live more! Check out the amazing selection of slot machines here!

    ResponderEliminar