Sviluppo4d.it
Sito indipendente di informazioni tecniche per sviluppatori 4th Dimension italiani  

Sviluppatori 4D

Utility 4D

Risorse 4D



4d logo
Naviga: Prev Next

Titolo: [v11 SQL] Il comando SET QUERY AND LOCK

Categoria: Comandi Ultimo Aggiornamento: 18/02/11


Il nuovo comando SET QUERY AND LOCK, che prende come parametro semplicemente True o False, permette di richiedere il blocco dei record risultanti da una query. Ciò garantisce che i risultati di una certa ricerca non possano essere modificato da un altro processo che non sia quello attuale.

Il comando può essere usato solo all'interno di una transazione (altrimenti restituisce errore), e i record restano bloccati finché la transazione viene terminata: a quel punto i record vengono comunque rilasciati. Basta comunque chiamare SET QUERY AND LOCK(False) per rilasciarli.

Ecco un esempio di cancellazione controllata da SET QUERY AND LOCK:

START TRANSACTION
SET QUERY AND LOCK(True)`così mi assicuro che i record trovati siano locked per gli altri
QUERY([Clients];[Clients]Category=“C”)
DELETE SELECTION([Clients])
SET QUERY AND LOCK(False)
VALIDATE TRANSACTION



Inviato da: PierPaolo Sichera Visite: 15385


PierPaolo Sichera 17/02/11 18:11:49
Interessante notare in aggiunta un paio di cose:

- i comandi interessati da questo comando sono tutti quelli di ricerca, e cioè:
  • QUERY
  • QUERY SELECTION
  • QUERY BY EXAMPLE
  • QUERY BY FORMULA
  • QUERY BY SQL
  • QUERY SELECTION BY FORMULA
  • QUERY SELECTION WITH ARRAY
  • QUERY WITH ARRAY


- se uno dei record della selezione risultante è bloccato:
  • La query viene arrestata e la variabile di sistema OK viene impostata a 0
  • La current selection viene svuotata
  • Il set LockedSet contiene il record bloccato che ha causato il fallimento della query.

Su una query con risultato vuoto è bene dunque controllare il LockedSet in modo da determinare eventuali cause di fallimento del comando di ricerca.

Se accedi con utente e password, puoi aggiungere dei commenti.


Accesso

User:
Pass: Accedi

Cerca

Se non trovi le informazioni che cerchi scrivi a aiuto@sviluppo4d.it

4D Principali

4D Discussioni

Faq random


Crediti

Dominio registrato da ZetaNet
Sito realizzato da Nexus srl
4D SQL 11.9.0 offerto da 4D & Italsoftware
Icone di FAMFAMFAM
Moderato da Umberto Migliore
301 utenti registrati

Pagina servita il 19/03/24 alle 05:30:47 Valid HTML 4.01! Valid CSS!

Mutuo Facile, iDigitalScout, iDigitalTags e altre app di Nexid srl per iPhone e iPad

Cidroid, distributore italiano lettori barcode per IOS Apple iPhone, iPod, iPad