AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / Editores / Editor de consultas / SQL
  • Presentación
  • Inicio de una transacción
  • Validación de una transacción
  • Cancelación de una transacción
  • Reanudar una transacción
  • Ejemplo
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Presentación
A partir de la versión 21, puede gestionar las transacciones en código SQL.
Inicio de una transacción
Las siguientes sentencias SQL se pueden utilizar para iniciar una transacción:
  • COMENZAR
  • EMPEZAR A TRABAJAR
  • BEGIN TRANSACTION
  • START TRANSACTION
  • INICIAR AISLAMIENTO DE LA TRANSACCIÓN <Nivel>Niveles. El parámetro <Nivel> puede corresponder a:
    • READ UNCOMMITTED
    • READ COMMITTED
    • REPEATABLE READ
    • SERIALIZABLE
    Si no se define ningún nivel de aislamiento en el comando SQL, el nivel de aislamiento que se define actualmente se utilizará para la transacción.
Para definir el nivel de aislamiento, también puede utilizar la siguiente sintaxis:
AISLAMIENTO DE set <Nivel>
El parámetro <Nivel> puede corresponder a:
  • READ UNCOMMITTED
  • READ COMMITTED
  • REPEATABLE READ
  • SERIALIZABLE
Validación de una transacción
Se pueden utilizar las siguientes sintaxis SQL para validar una transacción:
  • COMMIT
  • COMMIT WORK
  • COMMIT TRANSACTION
Las sintaxis utilizadas para encadenar una nueva operación también están disponibles:
  • COMPROMETER Y ENCADENAR
  • COMPROMETERSE CON EL TRABAJO Y LA CADENA
  • COMPROMETER LA TRANSACCIÓN Y LA CADENA
Cancelación de una transacción
Las siguientes sintaxis SQL pueden ser usadas para Cancel una transacción:
  • ROLLBACK
  • ROLLBACK WORK
  • ROLLBACK TRANSACTION
Las sintaxis utilizadas para encadenar una nueva operación también están disponibles:
  • ROLLBACK Y CADENA
  • TRABAJO DE DESMANTELAMIENTO Y CADENA
  • OPERACIÓN DE DESMANTELAMIENTO Y CADENA
Reanudar una transacción
Puede utilizar la siguiente sintaxis SQL para set y nombrar un punto de guardado en la transacción actual: SAVEPOINT SavepointName
Puede utilizar la siguiente sintaxis SQL para deshacer las operaciones realizadas dentro de la transacción desde que se estableció el punto de guardado: ROLLBACK A SAVEPOINT SavepointName
Ejemplo
let sdrTransactionStart is SQL Query =
[
START TRANSACTION
]
 
let sdrSavePoint is SQL Query =
[
SAVEPOINT MyPoint
]
 
let sdr is SQL Query =
[
INSERT INTO Customer
VALUES (3, 20), (4,22)
]
 
let sdrRollbackSavePoint is SQL Query =
[
ROLLBACK TO SAVEPOINT MyPoint
]
 
let sdrTransactionEnd is SQL Query =
[
COMMIT TRANSACTION
]
 
IF NOT HExecuteQuery(sdrTransactionStart) THEN
Trace(HErrorInfo())
END
 
sdrSavePoint is Data Source
 
IF NOT HExecuteSQLQuery(sdrSavePoint, "SAVEPOINT MyPoint") THEN
Trace(HErrorInfo())
END
 
IF NOT HExecuteQuery(sdr) THEN
Trace(HErrorInfo())
END
 
sdrRollbackSavePoint is Data Source
IF NOT HExecuteSQLQuery(sdrRollbackSavePoint, "ROLLBACK TO SAVEPOINT MyPoint") THEN
Trace(HErrorInfo())
END
 
let sdr2 is SQL Query =
[
INSERT INTO Customer
VALUES (10, 120), (11,122)
]
 
IF NOT HExecuteQuery(sdr2) THEN
Trace(HErrorInfo())
END
 
IF NOT HExecuteQuery(sdrTransactionEnd) THEN
Trace(HErrorInfo())
END
Versión mínima requerida
  • Versión 21
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local