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 / WLanguage / Administrar bases de datos / Funciones SQL
  • How to lock a table or the query records?
  • Native ORACLE Access
  • Native MySQL Access
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Used to lock:
  • The entire data table, in read and write mode. This data cannot be accessed by the other computers.
  • The records selected by the query. This data cannot be accessed by the other computers. This method can be used to update records for example. The query result is not returned.
SQLLock can be used on all Native Accesses (except SQLite and XML) and on some OLE DB providers (according to the capacities of provider and database). This function has no effect for the tables accessed by ODBC drivers.
Ejemplo
Qry is string
// Start of transaction for lock
SQLTransaction(sqlStart)
// Locks the entire table
SQLLock("CUSTOMER", "Table")
// Runs the query
Qry = "UPDATE CUSTOMER SET CUSTOMERNAME = 'DOE' WHERE CUSTOMERREF = 1043"
SQLExec(Qry, "QRY1")
// Unlock the file
SQLTransaction(sqlCommit)
QryLock, QryUpdate are strings
// Start of transaction for lock
SQLTransaction(sqlStart)
// Definition of Query
QryLock = "SELECT * FROM CUSTOMER WHERE CUSTOMERREF = 1043"
// Lock the result of SELECT query
SQLLock(QryLock)
// Define an update query
QryUpdate = "UPDATE CUSTOMER SET CUSTOMERNAME = 'DOE' WHERE CUSTOMERREF = 1043"
// Run an update query
SQLExec(QryUpdate, "QRY1")
// Unlock the records
SQLTransaction(sqlCommit)
Sintaxis

Locking an entire data table Ocultar los detalles

<Result> = SQLLock(<Table name> , <"Table">)
<Result>: Boolean
  • True if the lock was performed,
  • False otherwise.
<Table name>: Character string
Name of data table to lock.
<"Table">: Character string
"Table": Character string used to block an entire data table..

Locking the records selected by a query Ocultar los detalles

<Result> = SQLLock(<Query text>)
<Result>: Boolean
  • True if the lock was performed,
  • False otherwise.
<Query text>: Character string
Text of query used to select the records to lock.
Observaciones

How to lock a table or the query records?

To lock a table (or the query records):
  1. Start a transaction (SQLTransaction associated with the sqlStart constant).
  2. Lock the records (SQLLock).
    Warning: if you block the records of a query, the query is executed but the result is not returned.
  3. Unlock the records by ending the transaction (SQLTransaction associated with the sqlEnd constant).
WEBDEV - Código ServidorConectores Nativos

Native ORACLE Access

You have the ability to configure the behavior of SQLLock when the record is locked (infinite wait, immediate lock report, ...). This setting is performed in the options of WDORAINS.
WEBDEV - Código ServidorConectores Nativos

Native MySQL Access

SQLLock and SQLTransaction are used to manage locks and transactions only on "InnoDB" tables.
Componente: wd300hf.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/03/2025

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