Transazioni

martedì 11 gennaio 2011 - 17.14
Tag Elenco Tags  SQL Server 2008

iif Profilo | Expert

Ciao, ho una sp che inserisce dei record all'interno di una tabella.
Per fare cio utilizzo begin transaction

se lancio una select sulla tabella non mi fa vedere i dati che ha inserito

Come posso fare?

Grazie.

boccia75 Profilo | Junior Member

Pur non avendo capito molto bene la tua domanda, azzardo una risposta (e mi scuso se non è la risposta che ti serve).
Prova a fare questa di query:
select ....... from ..... with (NOLOCK) where ....

questa dovrebbe evitarti di aspettare la fine della sp e farti vedere i record inseriti fino a quel momento.
Ciao

lbenaglia Profilo | Guru

>Ciao, ho una sp che inserisce dei record all'interno di una tabella.
>Per fare cio utilizzo begin transaction
>
>se lancio una select sulla tabella non mi fa vedere i dati che
>ha inserito
Questo solo se la SELECT viene eseguita da una connessione differente a quella sotto transazione che sta eseguento le INSERT o peggio ti rimarrà in blocking (le transazioni servono appunto per garantire una consistenza logica dei dati).

>Come posso fare?
Ti suggerisco di studiare bene i concetti legati alle transazioni come gli effetti legati ad un accesso concorrente ai dati (dirty read, phantom, nonrepeatable read, ecc.), i livelli di isolamento, i tipi di lock, ecc.

>Grazie.
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5