It is currently 8 June 2025, 20:25 Advanced search

query di pannello in sola lettura e LOCK DB

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

Re: query di pannello in sola lettura e LOCK DB

Postby r.bianco » 19 July 2024, 12:33

Non è il framework di INDE a mettere il lock. E' la strategia di gestione dei lock di base di SQL Server che li gestisce in maniera pessimistica (a differenza di Oracle, per esempio, che li gestisce in maniera ottimistica).
Se si ha voglia di approfondire l'argomento, c'è un bel po' di letteratura a riguardo on-line.
Io ho scelto la strada della vista perchè mi offre anche vantaggi di performance. Oltre al fatto che gestisco sempre i pannelli in lista in sola consultazione, e poi faccio l'edit su form di dettaglio specifiche con la DO.


Molto interessante.
only work and no play makes jack a dull boy
r.bianco
 
Posts: 4979
Joined: 8 November 2010, 16:46

Re: query di pannello in sola lettura e LOCK DB

Postby Federico » 19 July 2024, 13:41

t.simoncini wrote:
r.bianco wrote:
cosa ne dite ?
Forse in questo caso il framework inde non mette il lock.

Non è il framework di INDE a mettere il lock. E' la strategia di gestione dei lock di base di SQL Server che li gestisce in maniera pessimistica (a differenza di Oracle, per esempio, che li gestisce in maniera ottimistica).
Se si ha voglia di approfondire l'argomento, c'è un bel po' di letteratura a riguardo on-line.
Io ho scelto la strada della vista perchè mi offre anche vantaggi di performance. Oltre al fatto che gestisco sempre i pannelli in lista in sola consultazione, e poi faccio l'edit su form di dettaglio specifiche con la DO.


Confermo io sto ragionando per sql di Microsoft senza tenere conto di altri db.
e si confermo che non è inde che blocca ma come si decide di lanciare la query e come è impostato il db.
da documentazione la vista potrebbe comunque provocare il lock quello di cui avrei bisogno io è di poter mettere nella query un comando
che farebbe funzionare la query nella modalità che desidero.

che potrebbe essere ... FROM MyTable WITH (NOLOCK) piuttosto che

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
SELECT *
FROM MyTable

solo che non riesco ad incastrarlo nel modo corretto. in coda mettendo una funzione dell'ordinamento riesco a passare quel che voglio dopo l'order by ma in questo caso non va bene. e mettere in testa prima del select anche li non saprei come fare.

con la vista val la penea provare
User avatar
Federico
 
Posts: 116
Joined: 7 December 2010, 16:25

Re: query di pannello in sola lettura e LOCK DB

Postby r.bianco » 19 July 2024, 13:42

Una cosa che si potrebbe fare è verificare il piano di esecuzione della qry di lettura, e ottimizzare (magari aggiungendo gli indici che mancano) riducendo così i tempi di esecuzione.
only work and no play makes jack a dull boy
r.bianco
 
Posts: 4979
Joined: 8 November 2010, 16:46

Re: query di pannello in sola lettura e LOCK DB

Postby t.simoncini » 19 July 2024, 14:01

Federico wrote:da documentazione la vista potrebbe comunque provocare il lock

AH! Vedi che si impara sempre qualcosa. Io il problema dei lock l'ho eliminato con l'introduzione delle viste. Pensavo che il motivo fosse quello. Probabilmente è solo il risultato di un'operazione molto più rapida ed efficiente (lettura) che non crea fastidio alle altre operazioni (scrittura).
t.simoncini
 
Posts: 1585
Joined: 5 March 2012, 14:00

Re: query di pannello in sola lettura e LOCK DB

Postby Federico » 19 July 2024, 15:28

t.simoncini wrote:
Federico wrote:da documentazione la vista potrebbe comunque provocare il lock

AH! Vedi che si impara sempre qualcosa. Io il problema dei lock l'ho eliminato con l'introduzione delle viste. Pensavo che il motivo fosse quello. Probabilmente è solo il risultato di un'operazione molto più rapida ed efficiente (lettura) che non crea fastidio alle altre operazioni (scrittura).


A tuttora resta l'idea migliore. non ho trovato un modo per inserire nella clausola from dopo le tabelle il comando che voglio io.

ci riesco dopo l'order by ma il comando che serve a me non lo prende da li.
User avatar
Federico
 
Posts: 116
Joined: 7 December 2010, 16:25

Re: query di pannello in sola lettura e LOCK DB

Postby t.simoncini » 19 July 2024, 15:45

In passato ho provato anche io a giocare con il generatore di query. A volte con successo a volte no. Potresti provare a personalizzare la query eseguita con del codice scritto a mano (es. https://doc.instantdeveloper.com/?ARTID ... 0&LANG=ita), però ha poco senso perchè diventa più complicata la manutenzione del codice (sempre che tu ci riesca nel tuo caso).
t.simoncini
 
Posts: 1585
Joined: 5 March 2012, 14:00

Re: query di pannello in sola lettura e LOCK DB

Postby Gionanni » 12 September 2024, 14:59

Ciao a tutti, mi aggancio alla discussione.
Il limite dei lock e l'ottimizzazione delle prestazione potrebbe essere affrontata con le viste materializzate (indicizzate in SQL server https://learn.microsoft.com/it-it/sql/r ... rver-ver15).
La cosa mi sembra interessante ma non ho esperienza in merito e inde non mi sembra supportarne la generazione. Voi avete esperienza in merito?
Gionanni
 
Posts: 196
Joined: 20 January 2011, 9:21

Re: query di pannello in sola lettura e LOCK DB

Postby t.simoncini » 12 September 2024, 15:26

Gionanni wrote:Ciao a tutti, mi aggancio alla discussione.
Il limite dei lock e l'ottimizzazione delle prestazione potrebbe essere affrontata con le viste materializzate (indicizzate in SQL server https://learn.microsoft.com/it-it/sql/r ... rver-ver15).
La cosa mi sembra interessante ma non ho esperienza in merito e inde non mi sembra supportarne la generazione. Voi avete esperienza in merito?

Ho visto il tuo thread, e sono incuriosito, ma non ho esperienza.
t.simoncini
 
Posts: 1585
Joined: 5 March 2012, 14:00

Previous

Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: No registered users and 56 guests