Utilice el comando ALTER SESSION para anular la transacción activa en una sesión, para establecer la prioridad de una sesión o para añadir una etiqueta a una sesión o quitarla de ella.
ALTER SESSION [<session_id>] ROLLBACK TRANSACTION
ALTER SESSION [<session_id>] SET PRIORITY TO <priority>
ALTER SESSION [<session_id>] {ADD | REMOVE} TAG <tag>
El comando ALTER SESSION toma las siguientes entradas:
| Entrada | Descripción |
|---|---|
| <session_id> | ID de una sesión activa. Si no se especifica ningún ID de sesión, el comando se aplica a la sesión actual. |
| <priority> | Nivel de prioridad al que se desea establecer la sesión (CRITICAL, HIGH, NORMAL o LOW). |
| <tag> | La etiqueta que se quiere añadir a la sesión o eliminar de ella. |
El comando ALTER SESSION produce las siguientes salidas:
| Salida | Descripción |
|---|---|
| ALTER SESSION | El comando se ha ejecutado correctamente. |
| ERROR: permission denied | El usuario no tiene permiso para emitir el comando para la sesión. |
| ERROR: request exceeds maximum priority limit. | El usuario ha intentado subir la prioridad de la sesión más allá del límite de prioridad máximo. |
| ERROR: id '<session_id>' does not correspond to an existing session. | No existe ninguna sesión con el ID indicado. |
| ERROR: system session id '<session_id>' cannot be aborted | El ID de sesión indicado hace referencia a una sesión del sistema. Un usuario no puede retrotraer una transacción de una sesión del sistema. |
| ERROR: access denied. You must have ABORT privileges to perform this action | El usuario no tiene permiso para retrotraer la transacción de la sesión. |
| ERROR: session abort failed for session <session_id>; reason is '<reason>' | Se ha encontrado un error en el intento de retrotraer la transacción activa de la sesión indicada por la razón indicada. |
system(admin)=> ALTER SESSION SET PRIORITY TO CRITICAL;
system(admin)=> ALTER SESSION 16011 ROLLBACK TRANSACTION;
system(admin)=> ALTER SESSION 16011 ADD TAG no_more_than_2;