2016-05-11 24 views
5

Ho creato tabella in SQL Server 2012 e quando eseguoCome sbloccare la tabella in SQL Server 2012?

select * from tableName 

sta prendendo molto tempo e un po 'di tempo non restituisce alcun risultato.

Attualmente ha solo 1 riga. Dopo la ricerca, so che è bloccato, quindi per favore aiutatemi a sbloccarlo o lasciarlo cadere?

+0

Quale processo si bloccandolo? Esegui la selezione *, quindi mentre è in attesa, esegui 'exec sp_who2'. La colonna BlkBy mostrerà la tua istruzione select bloccata da un altro numero di processo. Per cancellare quell'altro processo si desidera eseguire "KILL 32" (per il processo 32 come esempio) –

+0

Hi Rich Benner, Ho ucciso la sessione utilizzando l'approccio di sotto e ora quando eseguo il comando di selezione * lo interrogo dandomi risultato.È il giusto approccio? Non causerà alcun problema in futuro? –

+0

Dipende interamente dalla sessione che hai ucciso. Potresti dare un'occhiata a modificare il codice che stava causando il blocco in modo che non prendesse un blocco o potresti guardare i livelli di isolamento all'interno di SQL che ti permetteranno di aggirare questo problema. –

risposta

10

Grazie ragazzi .. È stato risolto.

ho sparato al di sotto di query

SELECT 
    OBJECT_NAME(P.object_id) AS TableName, 
    Resource_type, 
    request_session_id 
FROM 
    sys.dm_tran_locks L 
JOIN 
    sys.partitions P ON L.resource_associated_entity_id = p.hobt_id 
WHERE 
    OBJECT_NAME(P.object_id) = 'P1Chronolog_IncidentActivityUpdates' 

e ucciso quel rispettivo sessione

Kill session_ID 
Problemi correlati