none
Comando Sql

    Question

  • Ola..

    Qual o comando sql que utilizo para verificar as tabelas em lock em meu banco de dados SqlServer 2005
    Wednesday, November 24, 2010 7:10 PM

Answers

  • Desculpe...Tente agora:

    SELECT
         SPID,'BLOQUEADO' PROCESSO,BANCO = LEFT(DB_NAME(DBID), 20), BLOCKED, EQUIPAMENTO = LEFT(HOSTNAME, 20),
         PROGRAMA = LEFT(PROGRAM_NAME, 20), TEMPO_DE_ESPERA = CONVERT(INT, WAITTIME/1000), OPEN_TRAN,
         STATUS
    FROM MASTER.DBO.SYSPROCESSES
    WHERE BLOCKED > 0
     
    UNION SELECT
          SPID,'BLOQUEANTE' PROCESSO, BANCO = LEFT(DB_NAME(DBID),20) , BLOCKED, EQUIPAMENTO = LEFT(HOSTNAME, 20),
          PROGRAMA = LEFT(PROGRAM_NAME, 20), TEMPO_DE_ESPERA = CONVERT(INT, WAITTIME/1000), OPEN_TRAN,
          STATUS FROM MASTER.DBO.SYSPROCESSES
    WHERE BLOCKED = 0 AND
          SPID IN (SELECT BLOCKED FROM MASTER.DBO.SYSPROCESSES WHERE BLOCKED > 0)
    ORDER BY SPID


    Marco Antônio Pinheiro / MCTS - Database Developer 2008 - http://marcoantoniopinheiro.blogspot.com Se o post foi útil, não esqueça de marcá-lo.
    Wednesday, November 24, 2010 7:32 PM

All replies

  • Tente esta consulta:

    SELECT
         SPID,G.USERNAME USUARIO,'BLOQUEADO' PROCESSO,BANCO = LEFT(DB_NAME(DBID), 20), BLOCKED, EQUIPAMENTO = LEFT(HOSTNAME, 20),
         PROGRAMA = LEFT(PROGRAM_NAME, 20), TEMPO_DE_ESPERA = CONVERT(INT, WAITTIME/1000), OPEN_TRAN,
         STATUS
    FROM MASTER.DBO.SYSPROCESSES S,GLOGIN G (NOLOCK)
    WHERE BLOCKED > 0 AND G.COMPUTERNAME =  S.HOSTNAME
     
    UNION SELECT
          SPID,G.USERNAME USUARIO,'BLOQUEANTE' PROCESSO, BANCO = LEFT(DB_NAME(DBID),20) , BLOCKED, EQUIPAMENTO = LEFT(HOSTNAME, 20),
          PROGRAMA = LEFT(PROGRAM_NAME, 20), TEMPO_DE_ESPERA = CONVERT(INT, WAITTIME/1000), OPEN_TRAN,
          STATUS FROM MASTER.DBO.SYSPROCESSES S,GLOGIN G (NOLOCK)
    WHERE BLOCKED = 0 AND
          SPID IN (SELECT BLOCKED FROM MASTER.DBO.SYSPROCESSES WHERE BLOCKED > 0) AND
          G.COMPUTERNAME =  S.HOSTNAME 
    ORDER BY SPID

     

    Att.,


    Marco Antônio Pinheiro / MCTS - Database Developer 2008 - http://marcoantoniopinheiro.blogspot.com Se o post foi útil, não esqueça de marcá-lo.
    Wednesday, November 24, 2010 7:14 PM
  • Cara esta com erro... não rodou.. GLOGIN' invalido.
    Wednesday, November 24, 2010 7:27 PM
  • Desculpe...Tente agora:

    SELECT
         SPID,'BLOQUEADO' PROCESSO,BANCO = LEFT(DB_NAME(DBID), 20), BLOCKED, EQUIPAMENTO = LEFT(HOSTNAME, 20),
         PROGRAMA = LEFT(PROGRAM_NAME, 20), TEMPO_DE_ESPERA = CONVERT(INT, WAITTIME/1000), OPEN_TRAN,
         STATUS
    FROM MASTER.DBO.SYSPROCESSES
    WHERE BLOCKED > 0
     
    UNION SELECT
          SPID,'BLOQUEANTE' PROCESSO, BANCO = LEFT(DB_NAME(DBID),20) , BLOCKED, EQUIPAMENTO = LEFT(HOSTNAME, 20),
          PROGRAMA = LEFT(PROGRAM_NAME, 20), TEMPO_DE_ESPERA = CONVERT(INT, WAITTIME/1000), OPEN_TRAN,
          STATUS FROM MASTER.DBO.SYSPROCESSES
    WHERE BLOCKED = 0 AND
          SPID IN (SELECT BLOCKED FROM MASTER.DBO.SYSPROCESSES WHERE BLOCKED > 0)
    ORDER BY SPID


    Marco Antônio Pinheiro / MCTS - Database Developer 2008 - http://marcoantoniopinheiro.blogspot.com Se o post foi útil, não esqueça de marcá-lo.
    Wednesday, November 24, 2010 7:32 PM
  • opa.. valeu.. rodou.. este sql ira me demonstrar tabelas travadas em lock.. estou com esse problema aqui em meu banco... não sei se é minha aplicação.
    Wednesday, November 24, 2010 7:38 PM
  • OK. Vc pode tambem fazer por profiler e filtrar para pegar algum lock.

    Fica a seu critério.

    Att.,


    Marco Antônio Pinheiro / MCTS - Database Developer 2008 - http://marcoantoniopinheiro.blogspot.com Se o post foi útil, não esqueça de marcá-lo.
    Wednesday, November 24, 2010 7:41 PM
  • HRROGERIO, boa noite!

     

    Faça o seguinte:

    Abra uma consulta no Management Studio e digite

    SP_LOCK

     

    Está procedure mostra informações de LOCKS. No campo Type vocé pode ver a que objeto o lock está se referindo.

    Dica: Um ótimo lugar para buscar informações é o Books Online

     

    Abraços!

    Wednesday, November 24, 2010 8:08 PM