Ir direto para busca.
mssql-l · Ms-Sql Server - Brasil

Informações sobre o grupo

  • Associados: 2485
  • Categoria: SQL
  • Criado em: Feb 13, 2001
  • Idioma: Português
? Você já é um associado? Entre no Yahoo!

Dicas

Você sabia...
Você pode fazer buscas no grupo por mensagens antigas.

Mensagens

  Ajuda
Avançado
mensagens 29525 - 29555 de 32586   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
mensagens 29525 - 29555 de 32586   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
mensagens: Exibir resumo de mensagens Classificar por data ^  
#29525 De: Paulo Roberto Leonardo Pereira <pleonard@...>
Data: Qua, 7 de Out de 2009 8:32 pm
Assunto: Re: AJUDA!
pleonardxl
Enviar e-mail Enviar e-mail
 
Os bancos estão exatamente iguais em todos os ambientes ?
 
Paulo

2009/10/7 Rafael Camargo <rafael.camargo@...>
 

Pessoal, tenho uma consulta que me retorna valores no SQL 2005 e 2008, porém no SQL 2000 não retorna.

 

SELECT                                                                                      

      TC.NM_TIPOCONDICAO,                                                                         

      TC.COR_TIPOCONDICAO,                                                                       

      COUNT(CONDICAOEQUIPTO.COD_TIPOCONDICAO) QUANTIDADE                                          

FROM                                                                                        

      (SELECT DISTINCT                                                                           

            EQUIPTOORDEMEQUIPTO.COD_EQUIPTO,                                                          

            (SELECT                                                                                  

                  EOE.COD_TIPOCONDICAO                                                                   

            FROM                                                                                     

                  EQUIPTOORDEM EO                                                                        

                  INNER JOIN EQUIPTOORDEMEQUIPTO EOE ON (EO.COD_ORDEM = EOE.COD_ORDEM)                   

                  INNER JOIN TIPOCONDICAO TC ON (EOE.COD_TIPOCONDICAO = TC.COD_TIPOCONDICAO)             

            WHERE                                                                                    

                  COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO AND                                      

                  DAT_ENCERRADO + HR_ENCERRADO IN (SELECT                                                

                                                                       MAX(CAST(EO1.DAT_ENCERRADO + EO1.HR_ENCERRADO AS DATETIME))          

                                                                 FROM                                                                   

                                                                       EQUIPTOORDEM EO1                                                     

                                                                       INNER JOIN EQUIPTOORDEMEQUIPTO EOE1 ON EO1.COD_ORDEM = EOE1.COD_ORDEM

                                                                 WHERE                                                                   

                                                                       EOE1.COD_EQUIPTO = EOE.COD_EQUIPTO                                   

                                                                       AND EO1.DAT_AUTORIZACAO IS NOT NULL                                  

                                                                       AND EOE1.COD_TIPOCONDICAO IS NOT NULL                                

                                                                       AND EO1.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

                                                                 GROUP BY                                                                

                                                                   EOE1.COD_EQUIPTO)                                                      

                  ) COD_TIPOCONDICAO                                                                      

            FROM                                                                                      

                  EQUIPTOORDEMEQUIPTO                                                                      

                  INNER JOIN EQUIPTOORDEM ON EQUIPTOORDEM.COD_ORDEM = EQUIPTOORDEMEQUIPTO.COD_ORDEM       

     INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO

     INNER JOIN EQUIPTO E ON EQUIPTOORDEMEQUIPTO.COD_EQUIPTO = E.COD_EQUIPTO                 

                  INNER JOIN CENTROCUSTO CC ON E.COD_CENTROCUSTO = CC.COD_CENTROCUSTO                     

                  LEFT JOIN EQUIPTOPAI EQP ON  EQP.COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO          

            WHERE                                                                                     

                  EQUIPTOORDEM.DAT_AUTORIZACAO IS NOT NULL                                                

                  AND EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO IS NOT NULL                                    

                  AND EQUIPTOORDEM.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

  AND E.COD_CENTROCUSTO IN (1300)

      ) CONDICAOEQUIPTO                                                                       

            INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = CONDICAOEQUIPTO.COD_TIPOCONDICAO  

GROUP BY                                                                                 

   TC.NM_TIPOCONDICAO,                                                                    

   TC.COR_TIPOCONDICAO

 

Algum de vcs conseguem identificar alguma função ou sintaxe que não é compatível com o SQL2000? A consulta roda normal, mas não retorna resultado algum.

 

Atenciosamente,

 

Rafael Camargo I Engefaz I TI

rafael.camargo@...

 



#29526 De: Nildo <nilldo@...>
Data: Qua, 7 de Out de 2009 9:35 pm
Assunto: Re: AJUDA!
ofsoarez
Enviar e-mail Enviar e-mail
 
Verifique como está configurado o padrão para datas no servidor e no SQL Server (yyyy-mm-dd). De repente você quer passar 9 de janeiro e o servidor interpretou 01 de setembro


2009/10/7 Rafael Camargo <rafael.camargo@...>
 

Pessoal, tenho uma consulta que me retorna valores no SQL 2005 e 2008, porém no SQL 2000 não retorna.

 

SELECT                                                                                      

      TC.NM_TIPOCONDICAO,                                                                         

      TC.COR_TIPOCONDICAO,                                                                       

      COUNT(CONDICAOEQUIPTO.COD_TIPOCONDICAO) QUANTIDADE                                          

FROM                                                                                        

      (SELECT DISTINCT                                                                           

            EQUIPTOORDEMEQUIPTO.COD_EQUIPTO,                                                          

            (SELECT                                                                                  

                  EOE.COD_TIPOCONDICAO                                                                   

            FROM                                                                                     

                  EQUIPTOORDEM EO                                                                        

                  INNER JOIN EQUIPTOORDEMEQUIPTO EOE ON (EO.COD_ORDEM = EOE.COD_ORDEM)                   

                  INNER JOIN TIPOCONDICAO TC ON (EOE.COD_TIPOCONDICAO = TC.COD_TIPOCONDICAO)             

            WHERE                                                                                    

                  COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO AND                                      

                  DAT_ENCERRADO + HR_ENCERRADO IN (SELECT                                                

                                                                       MAX(CAST(EO1.DAT_ENCERRADO + EO1.HR_ENCERRADO AS DATETIME))          

                                                                 FROM                                                                   

                                                                       EQUIPTOORDEM EO1                                                     

                                                                       INNER JOIN EQUIPTOORDEMEQUIPTO EOE1 ON EO1.COD_ORDEM = EOE1.COD_ORDEM

                                                                 WHERE                                                                   

                                                                       EOE1.COD_EQUIPTO = EOE.COD_EQUIPTO                                   

                                                                       AND EO1.DAT_AUTORIZACAO IS NOT NULL                                  

                                                                       AND EOE1.COD_TIPOCONDICAO IS NOT NULL                                

                                                                       AND EO1.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

                                                                 GROUP BY                                                                

                                                                   EOE1.COD_EQUIPTO)                                                      

                  ) COD_TIPOCONDICAO                                                                      

            FROM                                                                                      

                  EQUIPTOORDEMEQUIPTO                                                                      

                  INNER JOIN EQUIPTOORDEM ON EQUIPTOORDEM.COD_ORDEM = EQUIPTOORDEMEQUIPTO.COD_ORDEM       

     INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO

     INNER JOIN EQUIPTO E ON EQUIPTOORDEMEQUIPTO.COD_EQUIPTO = E.COD_EQUIPTO                 

                  INNER JOIN CENTROCUSTO CC ON E.COD_CENTROCUSTO = CC.COD_CENTROCUSTO                     

                  LEFT JOIN EQUIPTOPAI EQP ON  EQP.COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO          

            WHERE                                                                                     

                  EQUIPTOORDEM.DAT_AUTORIZACAO IS NOT NULL                                                

                  AND EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO IS NOT NULL                                    

                  AND EQUIPTOORDEM.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

  AND E.COD_CENTROCUSTO IN (1300)

      ) CONDICAOEQUIPTO                                                                       

            INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = CONDICAOEQUIPTO.COD_TIPOCONDICAO  

GROUP BY                                                                                 

   TC.NM_TIPOCONDICAO,                                                                    

   TC.COR_TIPOCONDICAO

 

Algum de vcs conseguem identificar alguma função ou sintaxe que não é compatível com o SQL2000? A consulta roda normal, mas não retorna resultado algum.

 

Atenciosamente,

 

Rafael Camargo I Engefaz I TI

rafael.camargo@...

 



#29527 De: "Rafael Camargo" <rafael.camargo@...>
Data: Qui, 8 de Out de 2009 10:59 am
Assunto: RES: AJUDA!
rafatcamargo
Enviar e-mail Enviar e-mail
 

Bancos exatamente iguais, a única diferença é a versão do SQL...

 

Rafael Camargo I Engefaz I TI

rafael.camargo@...

 

De: mssql-l@... [mailto:mssql-l@...] Em nome de Paulo Roberto Leonardo Pereira
Enviada em: quarta-feira, 7 de outubro de 2009 17:33
Para: mssql-l@...
Assunto: Re: [mssql-l] AJUDA!

 

 

Os bancos estão exatamente iguais em todos os ambientes ?

 

Paulo

2009/10/7 Rafael Camargo <rafael.camargo@...>

 

Pessoal, tenho uma consulta que me retorna valores no SQL 2005 e 2008, porém no SQL 2000 não retorna.

 

SELECT                                                                                      

      TC.NM_TIPOCONDICAO,                                                                         

      TC.COR_TIPOCONDICAO,                                                                       

      COUNT(CONDICAOEQUIPTO.COD_TIPOCONDICAO) QUANTIDADE                                          

FROM                                                                                        

      (SELECT DISTINCT                                                                           

            EQUIPTOORDEMEQUIPTO.COD_EQUIPTO,                                                          

            (SELECT                                                                                  

                  EOE.COD_TIPOCONDICAO                                                                   

            FROM                                                                                     

                  EQUIPTOORDEM EO                                                                        

                  INNER JOIN EQUIPTOORDEMEQUIPTO EOE ON (EO.COD_ORDEM = EOE.COD_ORDEM)                   

                  INNER JOIN TIPOCONDICAO TC ON (EOE.COD_TIPOCONDICAO = TC.COD_TIPOCONDICAO)             

            WHERE                                                                                    

                  COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO AND                                      

                  DAT_ENCERRADO + HR_ENCERRADO IN (SELECT                                                

                                                                       MAX(CAST(EO1.DAT_ENCERRADO + EO1.HR_ENCERRADO AS DATETIME))          

                                                                 FROM                                                                   

                                                                       EQUIPTOORDEM EO1                                                     

                                                                       INNER JOIN EQUIPTOORDEMEQUIPTO EOE1 ON EO1.COD_ORDEM = EOE1.COD_ORDEM

                                                                 WHERE                                                                   

                                                                       EOE1.COD_EQUIPTO = EOE.COD_EQUIPTO                                   

                                                                       AND EO1.DAT_AUTORIZACAO IS NOT NULL                                  

                                                                       AND EOE1.COD_TIPOCONDICAO IS NOT NULL                                

                                                                       AND EO1.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

                                                                 GROUP BY                                                                

                                                                   EOE1.COD_EQUIPTO)                                                      

                  ) COD_TIPOCONDICAO                                                                      

            FROM                                                                                      

                  EQUIPTOORDEMEQUIPTO                                                                      

                  INNER JOIN EQUIPTOORDEM ON EQUIPTOORDEM.COD_ORDEM = EQUIPTOORDEMEQUIPTO.COD_ORDEM       

     INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO

     INNER JOIN EQUIPTO E ON EQUIPTOORDEMEQUIPTO.COD_EQUIPTO = E.COD_EQUIPTO                 

                  INNER JOIN CENTROCUSTO CC ON E.COD_CENTROCUSTO = CC.COD_CENTROCUSTO                     

                  LEFT JOIN EQUIPTOPAI EQP ON  EQP.COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO          

            WHERE                                                                                     

                  EQUIPTOORDEM.DAT_AUTORIZACAO IS NOT NULL                                                

                  AND EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO IS NOT NULL                                    

                  AND EQUIPTOORDEM.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

  AND E.COD_CENTROCUSTO IN (1300)

      ) CONDICAOEQUIPTO                                                                       

            INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = CONDICAOEQUIPTO.COD_TIPOCONDICAO  

GROUP BY                                                                                 

   TC.NM_TIPOCONDICAO,                                                                    

   TC.COR_TIPOCONDICAO

 

Algum de vcs conseguem identificar alguma função ou sintaxe que não é compatível com o SQL2000? A consulta roda normal, mas não retorna resultado algum.

 

Atenciosamente,

 

Rafael Camargo I Engefaz I TI

rafael.camargo@...

 

 


#29528 De: "fdamado" <fdamado@...>
Data: Qui, 8 de Out de 2009 4:08 pm
Assunto: Re: RES: AJUDA!
fdamado
Enviar e-mail Enviar e-mail
 
Rafael,
o comando in tem uma limitação em numero de registro
Utilize o comando exists no lugar do in

estou enviando um exemplo

-- usando IN
USE pubs
GO
SELECT distinct pub_name
FROM publishers
WHERE pub_id IN
    (SELECT pub_id
    FROM titles
    WHERE type = 'business')
GO

-- Usando EXISTS
USE pubs
GO
SELECT DISTINCT pub_name
FROM publishers
WHERE EXISTS
    (SELECT *
    FROM titles
    WHERE pub_id = publishers.pub_id
    AND type = 'business')
GO


Tentei ser util
Fernando D. Amado





--- Em mssql-l@..., "Rafael Camargo" <rafael.camargo@...>
escreveu
>
> Bancos exatamente iguais, a única diferença é a versão do SQL...
>
>
>
> Rafael Camargo I Engefaz I TI
>
> rafael.camargo@...
>
>
>
> De: mssql-l@... [mailto:mssql-l@...] Em nome
> de Paulo Roberto Leonardo Pereira
> Enviada em: quarta-feira, 7 de outubro de 2009 17:33
> Para: mssql-l@...
> Assunto: Re: [mssql-l] AJUDA!
>
>
>
>
>
> Os bancos estão exatamente iguais em todos os ambientes ?
>
>
>
> Paulo
>
> 2009/10/7 Rafael Camargo <rafael.camargo@...>
>
>
>
> Pessoal, tenho uma consulta que me retorna valores no SQL 2005 e 2008, porém
> no SQL 2000 não retorna.
>
>
>
> SELECT
>
>
>       TC.NM_TIPOCONDICAO,
>
>
>       TC.COR_TIPOCONDICAO,
>
>
>       COUNT(CONDICAOEQUIPTO.COD_TIPOCONDICAO) QUANTIDADE
>
>
> FROM
>
>
>       (SELECT DISTINCT
>
>
>             EQUIPTOORDEMEQUIPTO.COD_EQUIPTO,
>
>
>             (SELECT
>
>
>                   EOE.COD_TIPOCONDICAO
>
>
>             FROM
>
>
>                   EQUIPTOORDEM EO
>
>
>                   INNER JOIN EQUIPTOORDEMEQUIPTO EOE ON (EO.COD_ORDEM =
> EOE.COD_ORDEM)
>
>                   INNER JOIN TIPOCONDICAO TC ON (EOE.COD_TIPOCONDICAO =
> TC.COD_TIPOCONDICAO)
>
>             WHERE
>
>
>                   COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO AND
>
>
>                   DAT_ENCERRADO + HR_ENCERRADO IN (SELECT
>
>
>
> MAX(CAST(EO1.DAT_ENCERRADO + EO1.HR_ENCERRADO AS DATETIME))
>
>                                                                  FROM
>
>
>
> EQUIPTOORDEM EO1
>
>                                                                        INNER
> JOIN EQUIPTOORDEMEQUIPTO EOE1 ON EO1.COD_ORDEM = EOE1.COD_ORDEM
>
>                                                                  WHERE
>
>
>
> EOE1.COD_EQUIPTO = EOE.COD_EQUIPTO
>
>                                                                        AND
> EO1.DAT_AUTORIZACAO IS NOT NULL
>
>                                                                        AND
> EOE1.COD_TIPOCONDICAO IS NOT NULL
>
>                                                                        AND
> EO1.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'
>
>                                                                  GROUP BY
>
>
>
> EOE1.COD_EQUIPTO)
>
>                   ) COD_TIPOCONDICAO
>
>
>             FROM
>
>
>                   EQUIPTOORDEMEQUIPTO
>
>
>                   INNER JOIN EQUIPTOORDEM ON EQUIPTOORDEM.COD_ORDEM =
> EQUIPTOORDEMEQUIPTO.COD_ORDEM
>
>      INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO =
> EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO
>
>      INNER JOIN EQUIPTO E ON EQUIPTOORDEMEQUIPTO.COD_EQUIPTO = E.COD_EQUIPTO
>
>
>                   INNER JOIN CENTROCUSTO CC ON E.COD_CENTROCUSTO =
> CC.COD_CENTROCUSTO
>
>                   LEFT JOIN EQUIPTOPAI EQP ON  EQP.COD_EQUIPTO =
> EQUIPTOORDEMEQUIPTO.COD_EQUIPTO
>
>             WHERE
>
>
>                   EQUIPTOORDEM.DAT_AUTORIZACAO IS NOT NULL
>
>
>                   AND EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO IS NOT NULL
>
>
>                   AND EQUIPTOORDEM.DAT_ENCERRADO BETWEEN '09/01/2009' AND
> '09/30/2009'
>
>   AND E.COD_CENTROCUSTO IN (1300)
>
>       ) CONDICAOEQUIPTO
>
>
>             INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO =
> CONDICAOEQUIPTO.COD_TIPOCONDICAO
>
> GROUP BY
>
>
>    TC.NM_TIPOCONDICAO,
>
>
>    TC.COR_TIPOCONDICAO
>
>
>
> Algum de vcs conseguem identificar alguma função ou sintaxe que não é
> compatível com o SQL2000? A consulta roda normal, mas não retorna resultado
> algum.
>
>
>
> Atenciosamente,
>
>
>
> Rafael Camargo I Engefaz I TI
>
> rafael.camargo@...
>

#29529 De: Carlos Ligeiro <cligeiro@...>
Data: Qui, 8 de Out de 2009 4:18 pm
Assunto: Re: Banco de Dados Travando
cligeiro
Enviar e-mail Enviar e-mail
 
Fala Marcos.
 
Desculpe aí pela demora. Cara livros bons temos vários, mas se você não encontrar o do JB procure os da Microsfot Press, no próprio da site da Microsoft você tem os nomes.
 
Qualquer dúvida estou por aqui.
 
Abraços
 
Carlos Ligeiro

2009/10/1 Marcos Donizete Bosco <mdbosco@...>
 

Caro Carlos, primeiramente obrigado pelo interesse, consegui resolver sim, porem, nao era o sql server e sim confirguracoes de tempo de conexao no windows server 2008. mas to querendo aprender sobre o sql server, aproveito para te pedir uma dica sobre um bom livro do sql server 2005, ja me falaram do livro do Julio batisti, porem nao consigo encontra-lo em livraria alguma, voce saberia de algum outro bom ?
 
desde ja agradeco
 
Marcos Bosco

2009/10/1 Carlos Ligeiro <cligeiro@...>

 

E aí Marcos conseguiu encontrar a fonte dos seus problemas ?
 
Um abraço
 
Carlos Ligeiro

2009/9/24 Marcos Donizete Bosco <mdbosco@...>

 

obrigado, vou tentar
 
Marcos

2009/9/24 Carlos Ligeiro <cligeiro@...>
 

Marcos,
 
O que nosso amigo Rodrigo falou é um bom começo para você identificar a causa do problema. Muitas vezes a galera de sistema diz que o problema está no banco, mas por vezes o problema está na forma como foram construídos os procedimentos que acessam o banco.
 
Você pode dar uma olhada também, como está ficando o tamanho da TEMPDB veja se nesse horário ela está estourando o espaço em disco, veja também como está se comportando a memória.
 
Esse tipo de trabalho é pra mim um dos mais chatos, pois podemos encontrar rápido o problema como também pode levar um tempinho considerado.
 
Qualquer dúvida aí fale com a gente
 
Um abraço
 
Carlos Ligeiro

2009/9/24 Rodrigo Ribeiro <dbconsultoria@...>

 

Execute um profiler, e visualizando todos os eventos que estão chegando no servidor. É possivel materializar o trace em uma tabela física...depois é só filtrar os eventos com um duration time mais elevado.

boa sorte!

2009/9/22 gm2sistemas <mdbosco@...>

 

Trabalho com Windows Server 2008 e Sql Server 2005, sou DBA Oracle mas tenho pouco conhecimento com SQL Server 2005.

em alguns dias o algumas das maquinas da rede travam o programa SAPIENS por volta das 16:00 , 17:00 e o pessoal do sistema diz que o erro e no banco de dados.

Pergunta : como posso estar verificando tal situacao, pois, acho que o problema pode estar acontecendo no sistema ?

desde ja agradeco

Marcos




--
Rodrigo Ribeiro Gonçalves
=Analista de Sistemas=

Conheça meu blog: http://www.tsqlmaster.net




--
Carlos Ligeiro





--
Carlos Ligeiro





--
Carlos Ligeiro

#29530 De: "Rafael Camargo" <rafael.camargo@...>
Data: Qui, 8 de Out de 2009 2:23 pm
Assunto: ENC: AJUDA!
rafatcamargo
Enviar e-mail Enviar e-mail
 

Pessoal, encontrei o problema e gostaria de compartilhar com vocês.

 

A situação descrita foi a seguinte: Tenho uma consulta que traz resultados quando rodada em um banco SQL2005, porém a mesma consulta com os mesmos dados em banco rodando em SQL2000 não traz resultado algum.

 

Alterei aquela consulta para:

 

SELECT                                                                                      

      TC.NM_TIPOCONDICAO,                                                                        

      TC.COR_TIPOCONDICAO,                                                                       

      COUNT(CONDICAOEQUIPTO.COD_TIPOCONDICAO) QUANTIDADE                                         

FROM                                                                                         

      (SELECT DISTINCT                                                                           

            EQUIPTOORDEMEQUIPTO.COD_EQUIPTO,                                                         

            (SELECT                                                                                   

                  EOE.COD_TIPOCONDICAO                                                                   

            FROM                                                                                     

                  EQUIPTOORDEM EO                                                                         

                  INNER JOIN EQUIPTOORDEMEQUIPTO EOE ON (EO.COD_ORDEM = EOE.COD_ORDEM)                   

                  INNER JOIN TIPOCONDICAO TC ON (EOE.COD_TIPOCONDICAO = TC.COD_TIPOCONDICAO)             

            WHERE                                                                                    

                  COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO AND                                      

                  DAT_ENCERRADO + HR_ENCERRADO IN (SELECT                                                 

                                                                       MAX(CAST(EO1.DAT_ENCERRADO + EO1.HR_ENCERRADO AS DATETIME))          

                                                                 FROM                                                                   

                                                                       EQUIPTOORDEM EO1                                                      

                                                                       INNER JOIN EQUIPTOORDEMEQUIPTO EOE1 ON EO1.COD_ORDEM = EOE1.COD_ORDEM

                                                                 WHERE                                                                  

                                                                       EOE1.COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO                                   

                                                                       AND EO1.DAT_AUTORIZACAO IS NOT NULL                                  

                                                                       AND EOE1.COD_TIPOCONDICAO IS NOT NULL                                

                                                                       AND EO1.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

                                                                 GROUP BY                                                                

                                                                   EOE1.COD_EQUIPTO)                                                     

                  ) COD_TIPOCONDICAO                                                                      

            FROM                                                                                      

                  EQUIPTOORDEMEQUIPTO                                                                      

                  INNER JOIN EQUIPTOORDEM ON EQUIPTOORDEM.COD_ORDEM = EQUIPTOORDEMEQUIPTO.COD_ORDEM       

     INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO

     INNER JOIN EQUIPTO E ON EQUIPTOORDEMEQUIPTO.COD_EQUIPTO = E.COD_EQUIPTO                 

                  INNER JOIN CENTROCUSTO CC ON E.COD_CENTROCUSTO = CC.COD_CENTROCUSTO                     

                  LEFT JOIN EQUIPTOPAI EQP ON  EQP.COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO          

            WHERE                                                                                      

                  EQUIPTOORDEM.DAT_AUTORIZACAO IS NOT NULL                                                

                  AND EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO IS NOT NULL                                    

                  AND EQUIPTOORDEM.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

  AND E.COD_CENTROCUSTO IN (1300)

      ) CONDICAOEQUIPTO                                                                       

            INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = CONDICAOEQUIPTO.COD_TIPOCONDICAO  

GROUP BY                                                                                 

   TC.NM_TIPOCONDICAO,                                                                   

   TC.COR_TIPOCONDICAO                                                                    

 

Vejam que eu alterei a tabela que relacionava a consulta mais abaixo.. eu utilizava a EOE, que é a mesma tabela, mas utilizada na consulta do meio. Mudei para  equiptoordemequipto, que é utilizada na consulta de cima e me trouxe os resultados esperados, mesmo em sql2000.

 

Alguém sabe me explicar o que ocorreu? Será que o SQL2000 é “burrinho”?

 

Rafael Camargo I Engefaz I TI

rafael.camargo@...

 

De: Rafael Camargo [mailto:rafael.camargo@...]
Enviada em: quarta-feira, 7 de outubro de 2009 17:04
Para: 'mssql-l@...'
Assunto: AJUDA!

 

Pessoal, tenho uma consulta que me retorna valores no SQL 2005 e 2008, porém no SQL 2000 não retorna.

 

SELECT                                                                                      

      TC.NM_TIPOCONDICAO,                                                                         

      TC.COR_TIPOCONDICAO,                                                                       

      COUNT(CONDICAOEQUIPTO.COD_TIPOCONDICAO) QUANTIDADE                                          

FROM                                                                                        

      (SELECT DISTINCT                                                                           

            EQUIPTOORDEMEQUIPTO.COD_EQUIPTO,                                                          

            (SELECT                                                                                  

                  EOE.COD_TIPOCONDICAO                                                                   

            FROM                                                                                     

                  EQUIPTOORDEM EO                                                                        

                  INNER JOIN EQUIPTOORDEMEQUIPTO EOE ON (EO.COD_ORDEM = EOE.COD_ORDEM)                   

                  INNER JOIN TIPOCONDICAO TC ON (EOE.COD_TIPOCONDICAO = TC.COD_TIPOCONDICAO)             

            WHERE                                                                                    

                  COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO AND                                      

                  DAT_ENCERRADO + HR_ENCERRADO IN (SELECT                                                

                                                                       MAX(CAST(EO1.DAT_ENCERRADO + EO1.HR_ENCERRADO AS DATETIME))          

                                                                 FROM                                                                   

                                                                       EQUIPTOORDEM EO1                                                     

                                                                       INNER JOIN EQUIPTOORDEMEQUIPTO EOE1 ON EO1.COD_ORDEM = EOE1.COD_ORDEM

                                                                 WHERE                                                                   

                                                                       EOE1.COD_EQUIPTO = EOE.COD_EQUIPTO                                   

                                                                       AND EO1.DAT_AUTORIZACAO IS NOT NULL                                  

                                                                       AND EOE1.COD_TIPOCONDICAO IS NOT NULL                                

                                                                       AND EO1.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

                                                                 GROUP BY                                                                

                                                                   EOE1.COD_EQUIPTO)                                                      

                  ) COD_TIPOCONDICAO                                                                      

            FROM                                                                                      

                  EQUIPTOORDEMEQUIPTO                                                                      

                  INNER JOIN EQUIPTOORDEM ON EQUIPTOORDEM.COD_ORDEM = EQUIPTOORDEMEQUIPTO.COD_ORDEM       

     INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO

     INNER JOIN EQUIPTO E ON EQUIPTOORDEMEQUIPTO.COD_EQUIPTO = E.COD_EQUIPTO                 

                  INNER JOIN CENTROCUSTO CC ON E.COD_CENTROCUSTO = CC.COD_CENTROCUSTO                     

                  LEFT JOIN EQUIPTOPAI EQP ON  EQP.COD_EQUIPTO = EQUIPTOORDEMEQUIPTO.COD_EQUIPTO          

            WHERE                                                                                     

                  EQUIPTOORDEM.DAT_AUTORIZACAO IS NOT NULL                                                

                  AND EQUIPTOORDEMEQUIPTO.COD_TIPOCONDICAO IS NOT NULL                                    

                  AND EQUIPTOORDEM.DAT_ENCERRADO BETWEEN '09/01/2009' AND '09/30/2009'

  AND E.COD_CENTROCUSTO IN (1300)

      ) CONDICAOEQUIPTO                                                                       

            INNER JOIN TIPOCONDICAO TC ON TC.COD_TIPOCONDICAO = CONDICAOEQUIPTO.COD_TIPOCONDICAO  

GROUP BY                                                                                 

   TC.NM_TIPOCONDICAO,                                                                    

   TC.COR_TIPOCONDICAO

 

Algum de vcs conseguem identificar alguma função ou sintaxe que não é compatível com o SQL2000? A consulta roda normal, mas não retorna resultado algum.

 

Atenciosamente,

 

Rafael Camargo I Engefaz I TI

rafael.camargo@...

 


#29531 De: Evandro Siqueira <vansiqq@...>
Data: Qui, 8 de Out de 2009 4:46 pm
Assunto: Banco com períodos de lentidão.
ej_siqueira
Enviar e-mail Enviar e-mail
 
Boa tarde a todos,

temos um banco de dados no SQLServer 2005 que tem hoje aproximadamente
16Gb. O acesso a ele geralmente é muito rápido mas durante um
determinado período do dia, especificamente entre as 8 e as 9 da manhã,
ele empaca e praticamente para a fábrica. Só como exemplo, temos um
relatório cuja consulta dura entre 3 e 7 segundos e durante este período
essa consulta retorna entre 30 e 40 minutos!!!

Durante esse período o sql server consome aproximadamente 90% dos
recursos do servidor (DELL Power Edge 1900 Xeon Quad core 1.6 mhz, com 4
Mb de RAM e HD Sata II de 250 Gb), e depois de um tempo ele volta ao
normal, sem nenhuma interferência. Já verifiquei se o banco está rodando
algum processo fora do horário (backup, maintenance ou outro job
qualquer) e não encontro nada... existe algum outro processo interno do
banco que possa estar causando esta lentidão? Tipo garbage collection
(nem sei se tem isso... o Firebird tem) ou alguma rotina interna de
manutenção do próprio sql server... e se for o caso tem como configurar
para um horário mais "auspicioso"? tipo 2 ou 3 da madrugada, por exemplo?

Fico grato a todos por qualquer sugestão que possa me ajudar a sanar o
problema.

--
[]’s.

Evandro Siqueira
Programador de Sistemas
L’essentiel Lingerie
(79) 3254-5511 Ramal 218
skype: evandro.lessentiel

#29532 De: Rodrigo Ribeiro <dbconsultoria@...>
Data: Qui, 8 de Out de 2009 5:11 pm
Assunto: Re: Banco com períodos de lentidão.
ribeiro_floripa
Enviar e-mail Enviar e-mail
 
Evandro,

Execute o sql server profiler, e verifique se existe alguma query ou procedure de algum tipo sendo executada.

Como é um problema que se repete diariamente, verifica se não há nenhum JOB sendo executado no horário, ou alguma tarefa do mantainance plan sendo executada como um reindex de index defrag por exemplo.

Dá uma revisada nestes ítens e depois volta aqui para comentar como foi...

abs

Rodrigo
www.tsqlmaster.net


2009/10/8 Evandro Siqueira <vansiqq@...>
Boa tarde a todos,

temos um banco de dados no SQLServer 2005 que tem hoje aproximadamente
16Gb. O acesso a ele geralmente é muito rápido mas durante um
determinado período do dia, especificamente entre as 8 e as 9 da manhã,
ele empaca e praticamente para a fábrica. Só como exemplo, temos um
relatório cuja consulta dura entre 3 e 7 segundos e durante este período
essa consulta retorna entre 30 e 40 minutos!!!

Durante esse período o sql server consome aproximadamente 90% dos
recursos do servidor (DELL Power Edge 1900 Xeon Quad core 1.6 mhz, com 4
Mb de RAM e HD Sata II de 250 Gb), e depois de um tempo ele volta ao
normal, sem nenhuma interferência. Já verifiquei se o banco está rodando
algum processo fora do horário (backup, maintenance ou outro job
qualquer) e não encontro nada... existe algum outro processo interno do
banco que possa estar causando esta lentidão? Tipo garbage collection
(nem sei se tem isso... o Firebird tem) ou alguma rotina interna de
manutenção do próprio sql server... e se for o caso tem como configurar
para um horário mais "auspicioso"? tipo 2 ou 3 da madrugada, por exemplo?

Fico grato a todos por qualquer sugestão que possa me ajudar a sanar o
problema.

--
[]’s.

Evandro Siqueira
Programador de Sistemas
L’essentiel Lingerie
(79) 3254-5511 Ramal 218
skype: evandro.lessentiel



------------------------------------

Veja Oportunidades de Emprego em Ms-Sql Server e Tecnologias relacionadas:
http://br.groups.yahoo.com/group/mssql-empregos/

Outros grupos de discussão:
http://www.webmundi.org/default.asp

Site de Tecnologia, Negócios e Variedades:
http://www.webmundi.com/ Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
   http://br.groups.yahoo.com/group/mssql-l/

<*> Para sair deste grupo, envie um e-mail para:
   mssql-l-unsubscribe@...

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
   http://br.yahoo.com/info/utos.html





--
Rodrigo Ribeiro Gonçalves
=Analista de Sistemas=

Conheça meu blog: http://www.tsqlmaster.net

#29533 De: Nildo <nilldo@...>
Data: Qui, 8 de Out de 2009 8:54 pm
Assunto: Re: Banco com períodos de lentidão.
ofsoarez
Enviar e-mail Enviar e-mail
 
Seu servidor é dedicado para o SGBD? Tem antivírus ou algum outro processo externo que possa estar agendado e consumindo recursos?

2009/10/8 Rodrigo Ribeiro <dbconsultoria@...>
 

Evandro,

Execute o sql server profiler, e verifique se existe alguma query ou procedure de algum tipo sendo executada.

Como é um problema que se repete diariamente, verifica se não há nenhum JOB sendo executado no horário, ou alguma tarefa do mantainance plan sendo executada como um reindex de index defrag por exemplo.

Dá uma revisada nestes ítens e depois volta aqui para comentar como foi...

abs

Rodrigo
www.tsqlmaster.net


2009/10/8 Evandro Siqueira <vansiqq@...>

Boa tarde a todos,

temos um banco de dados no SQLServer 2005 que tem hoje aproximadamente
16Gb. O acesso a ele geralmente é muito rápido mas durante um
determinado período do dia, especificamente entre as 8 e as 9 da manhã,
ele empaca e praticamente para a fábrica. Só como exemplo, temos um
relatório cuja consulta dura entre 3 e 7 segundos e durante este período
essa consulta retorna entre 30 e 40 minutos!!!

Durante esse período o sql server consome aproximadamente 90% dos
recursos do servidor (DELL Power Edge 1900 Xeon Quad core 1.6 mhz, com 4
Mb de RAM e HD Sata II de 250 Gb), e depois de um tempo ele volta ao
normal, sem nenhuma interferência. Já verifiquei se o banco está rodando
algum processo fora do horário (backup, maintenance ou outro job
qualquer) e não encontro nada... existe algum outro processo interno do
banco que possa estar causando esta lentidão? Tipo garbage collection
(nem sei se tem isso... o Firebird tem) ou alguma rotina interna de
manutenção do próprio sql server... e se for o caso tem como configurar
para um horário mais "auspicioso"? tipo 2 ou 3 da madrugada, por exemplo?

Fico grato a todos por qualquer sugestão que possa me ajudar a sanar o
problema.

--
[]’s.

Evandro Siqueira
Programador de Sistemas
L’essentiel Lingerie
(79) 3254-5511 Ramal 218
skype: evandro.lessentiel



------------------------------------

Veja Oportunidades de Emprego em Ms-Sql Server e Tecnologias relacionadas:
http://br.groups.yahoo.com/group/mssql-empregos/

Outros grupos de discussão:
http://www.webmundi.org/default.asp

Site de Tecnologia, Negócios e Variedades:
http://www.webmundi.com/ Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
   http://br.groups.yahoo.com/group/mssql-l/

<*> Para sair deste grupo, envie um e-mail para:
   mssql-l-unsubscribe@...

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
   http://br.yahoo.com/info/utos.html





--
Rodrigo Ribeiro Gonçalves
=Analista de Sistemas=

Conheça meu blog: http://www.tsqlmaster.net


#29534 De: André <deco0_07@...>
Data: Sex, 9 de Out de 2009 2:25 pm
Assunto: Campo Hora
deco0_07
Enviar e-mail Enviar e-mail
 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 


#29535 De: Evandro Siqueira <vansiqq@...>
Data: Sex, 9 de Out de 2009 1:30 pm
Assunto: Re: Banco com períodos de lentidão.
ej_siqueira
Enviar e-mail Enviar e-mail
 
O Servidor não é dedicado. Ele também é controlador de domínio. Não tem
antivírus nem nenhum outro processo externo. Quem consome os recursos é
o mssql mesmo. Já verifiquei os jobs do mssql e não tem nenhum rodando
nesse horário... nem nenhuma query que justifique esse nível de operação
do banco.

por isso que perguntei se existe algum processo interno do banco, pq
quem consome os recursos é ele e os jobs que eu conheço não estão em
atividade durante esse período de lentidão.

--
[]’s.

Evandro Siqueira
Programador de Sistemas
L’essentiel Lingerie
(79) 3254-5511 Ramal 218
skype: evandro.lessentiel


Nildo escreveu:
>
>
> Seu servidor é dedicado para o SGBD? Tem antivírus ou algum outro
> processo externo que possa estar agendado e consumindo recursos?
>
> 2009/10/8 Rodrigo Ribeiro <dbconsultoria@...
> <mailto:dbconsultoria@...>>
>
>
>
>     Evandro,
>
>     Execute o sql server profiler, e verifique se existe alguma query
>     ou procedure de algum tipo sendo executada.
>
>     Como é um problema que se repete diariamente, verifica se não há
>     nenhum JOB sendo executado no horário, ou alguma tarefa do
>     mantainance plan sendo executada como um reindex de index defrag
>     por exemplo.
>
>     Dá uma revisada nestes ítens e depois volta aqui para comentar
>     como foi...
>
>     abs
>
>     Rodrigo
>     www.tsqlmaster.net <http://www.tsqlmaster.net>
>
>
>     2009/10/8 Evandro Siqueira <vansiqq@...
>     <mailto:vansiqq@...>>
>
>         Boa tarde a todos,
>
>         temos um banco de dados no SQLServer 2005 que tem hoje
>         aproximadamente
>         16Gb. O acesso a ele geralmente é muito rápido mas durante um
>         determinado período do dia, especificamente entre as 8 e as 9
>         da manhã,
>         ele empaca e praticamente para a fábrica. Só como exemplo,
>         temos um
>         relatório cuja consulta dura entre 3 e 7 segundos e durante
>         este período
>         essa consulta retorna entre 30 e 40 minutos!!!
>
>         Durante esse período o sql server consome aproximadamente 90% dos
>         recursos do servidor (DELL Power Edge 1900 Xeon Quad core 1.6
>         mhz, com 4
>         Mb de RAM e HD Sata II de 250 Gb), e depois de um tempo ele
>         volta ao
>         normal, sem nenhuma interferência. Já verifiquei se o banco
>         está rodando
>         algum processo fora do horário (backup, maintenance ou outro job
>         qualquer) e não encontro nada... existe algum outro processo
>         interno do
>         banco que possa estar causando esta lentidão? Tipo garbage
>         collection
>         (nem sei se tem isso... o Firebird tem) ou alguma rotina
>         interna de
>         manutenção do próprio sql server... e se for o caso tem como
>         configurar
>         para um horário mais "auspicioso"? tipo 2 ou 3 da madrugada,
>         por exemplo?
>
>         Fico grato a todos por qualquer sugestão que possa me ajudar a
>         sanar o
>         problema.
>
>         --
>         []’s.
>
>         Evandro Siqueira
>         Programador de Sistemas
>         L’essentiel Lingerie
>         (79) 3254-5511 Ramal 218
>         skype: evandro.lessentiel
>
>
>
>         ------------------------------------
>
>         Veja Oportunidades de Emprego em Ms-Sql Server e Tecnologias
>         relacionadas:
>         http://br.groups.yahoo.com/group/mssql-empregos/
>
>         Outros grupos de discussão:
>         http://www.webmundi.org/default.asp
>
>         Site de Tecnologia, Negócios e Variedades:
>         http://www.webmundi.com/ Links do Yahoo! Grupos
>
>
>
>
>
>
>     --
>     Rodrigo Ribeiro Gonçalves
>     =Analista de Sistemas=
>
>     Conheça meu blog: http://www.tsqlmaster.net
>
>
>
>
>

#29536 De: Carlos Ligeiro <cligeiro@...>
Data: Sex, 9 de Out de 2009 3:06 pm
Assunto: Re: Campo Hora
cligeiro
Enviar e-mail Enviar e-mail
 
Tem o Datepart e tb vc pode fazer um convert(varchar, data, 108) não lembro ao certo o 100 da vida, mas testa do 100 ao 113 que vc encontra :)
 
Um abraço
 
Carlos Ligeiro

2009/10/9 André <deco0_07@...>
 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 




--
Carlos Ligeiro

#29537 De: Carlos Ligeiro <cligeiro@...>
Data: Sex, 9 de Out de 2009 3:04 pm
Assunto: Re: Banco com períodos de lentidão.
cligeiro
Enviar e-mail Enviar e-mail
 
Evandro,
 
No horário que estiver dando a lentidão, ligue o Profile, de uma outra máquina sem ser o servidor, aponte pro servidor e acompanhe, se for algo relacionando ao banco vc vai conseguir pegar pelo Profile
 
Um abraço
 
Carlos Ligeiro

2009/10/9 Evandro Siqueira <vansiqq@...>
O Servidor não é dedicado. Ele também é controlador de domínio. Não tem
antivírus nem nenhum outro processo externo. Quem consome os recursos é
o mssql mesmo. Já verifiquei os jobs do mssql e não tem nenhum rodando
nesse horário... nem nenhuma query que justifique esse nível de operação
do banco.

por isso que perguntei se existe algum processo interno do banco, pq
quem consome os recursos é ele e os jobs que eu conheço não estão em
atividade durante esse período de lentidão.

--
[]’s.

Evandro Siqueira
Programador de Sistemas
L’essentiel Lingerie
(79) 3254-5511 Ramal 218
skype: evandro.lessentiel


Nildo escreveu:
>
>
> Seu servidor é dedicado para o SGBD? Tem antivírus ou algum outro
> processo externo que possa estar agendado e consumindo recursos?
>
> 2009/10/8 Rodrigo Ribeiro <dbconsultoria@...
> <mailto:dbconsultoria@...>>
>
>
>
>     Evandro,
>
>     Execute o sql server profiler, e verifique se existe alguma query
>     ou procedure de algum tipo sendo executada.
>
>     Como é um problema que se repete diariamente, verifica se não há
>     nenhum JOB sendo executado no horário, ou alguma tarefa do
>     mantainance plan sendo executada como um reindex de index defrag
>     por exemplo.
>
>     Dá uma revisada nestes ítens e depois volta aqui para comentar
>     como foi...
>
>     abs
>
>     Rodrigo
>     www.tsqlmaster.net <http://www.tsqlmaster.net>
>
>
>     2009/10/8 Evandro Siqueira <vansiqq@...
>     <mailto:vansiqq@...>>
>
>         Boa tarde a todos,
>
>         temos um banco de dados no SQLServer 2005 que tem hoje
>         aproximadamente
>         16Gb. O acesso a ele geralmente é muito rápido mas durante um
>         determinado período do dia, especificamente entre as 8 e as 9
>         da manhã,
>         ele empaca e praticamente para a fábrica. Só como exemplo,
>         temos um
>         relatório cuja consulta dura entre 3 e 7 segundos e durante
>         este período
>         essa consulta retorna entre 30 e 40 minutos!!!
>
>         Durante esse período o sql server consome aproximadamente 90% dos
>         recursos do servidor (DELL Power Edge 1900 Xeon Quad core 1.6
>         mhz, com 4
>         Mb de RAM e HD Sata II de 250 Gb), e depois de um tempo ele
>         volta ao
>         normal, sem nenhuma interferência. Já verifiquei se o banco
>         está rodando
>         algum processo fora do horário (backup, maintenance ou outro job
>         qualquer) e não encontro nada... existe algum outro processo
>         interno do
>         banco que possa estar causando esta lentidão? Tipo garbage
>         collection
>         (nem sei se tem isso... o Firebird tem) ou alguma rotina
>         interna de
>         manutenção do próprio sql server... e se for o caso tem como
>         configurar
>         para um horário mais "auspicioso"? tipo 2 ou 3 da madrugada,
>         por exemplo?
>
>         Fico grato a todos por qualquer sugestão que possa me ajudar a
>         sanar o
>         problema.
>
>         --
>         []’s.
>
>         Evandro Siqueira
>         Programador de Sistemas
>         L’essentiel Lingerie
>         (79) 3254-5511 Ramal 218
>         skype: evandro.lessentiel
>
>
>
>         ------------------------------------
>
>         Veja Oportunidades de Emprego em Ms-Sql Server e Tecnologias
>         relacionadas:
>         http://br.groups.yahoo.com/group/mssql-empregos/
>
>         Outros grupos de discussão:
>         http://www.webmundi.org/default.asp
>
>         Site de Tecnologia, Negócios e Variedades:
>         http://www.webmundi.com/ Links do Yahoo! Grupos
>
>
>
>
>
>
>     --
>     Rodrigo Ribeiro Gonçalves
>     =Analista de Sistemas=
>
>     Conheça meu blog: http://www.tsqlmaster.net
>
>
>
>
>


------------------------------------

Veja Oportunidades de Emprego em Ms-Sql Server e Tecnologias relacionadas:
http://br.groups.yahoo.com/group/mssql-empregos/

Outros grupos de discussão:
http://www.webmundi.org/default.asp

Site de Tecnologia, Negócios e Variedades:
http://www.webmundi.com/ Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
   http://br.groups.yahoo.com/group/mssql-l/

<*> Para sair deste grupo, envie um e-mail para:
   mssql-l-unsubscribe@...

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
   http://br.yahoo.com/info/utos.html





--
Carlos Ligeiro

#29538 De: "Renato Romero Lopes" <renato@...>
Data: Sex, 9 de Out de 2009 4:29 pm
Assunto: RES: Campo Hora
renatoromero...
Enviar e-mail Enviar e-mail
 

Carlos/André

 

É o 114

 

Select Convert(varchar(20),GetDate(),114)

 

Renato Romero Lopes

renato@...

http://www.puc-campinas.br

 


De: mssql-l@... [mailto:mssql-l@...] Em nome de Carlos Ligeiro
Enviada em: sexta-feira, 9 de outubro de 2009 12:07
Para: mssql-l@...
Assunto: Re: [mssql-l] Campo Hora

 

 

Tem o Datepart e tb vc pode fazer um convert(varchar, data, 108) não lembro ao certo o 100 da vida, mas testa do 100 ao 113 que vc encontra :)

 

Um abraço

 

Carlos Ligeiro

2009/10/9 André <deco0_07@yahoo.com.br>

 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 




--
Carlos Ligeiro


#29539 De: Carlos Ligeiro <cligeiro@...>
Data: Sex, 9 de Out de 2009 6:24 pm
Assunto: Re: Campo Hora
cligeiro
Enviar e-mail Enviar e-mail
 
Opz então meu range falhava por 1 hehehehe
 
Eu não lembrava de cabeça.
 
Valeu aí pela dica pro nosso amigo
 
Um abraço
 
Carlos Ligeiro

2009/10/9 Renato Romero Lopes <renato@...>
 

Carlos/André

 

É o 114

 

Select Convert(varchar(20),GetDate(),114)

 

 


De: mssql-l@... [mailto:mssql-l@...] Em nome de Carlos Ligeiro
Enviada em: sexta-feira, 9 de outubro de 2009 12:07
Para: mssql-l@...
Assunto: Re: [mssql-l] Campo Hora

 

 

Tem o Datepart e tb vc pode fazer um convert(varchar, data, 108) não lembro ao certo o 100 da vida, mas testa do 100 ao 113 que vc encontra :)

 

Um abraço

 

Carlos Ligeiro

2009/10/9 André <deco0_07@...>

 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 




--
Carlos Ligeiro




--

#29540 De: Lucas Souza <lucassouzace@...>
Data: Sex, 9 de Out de 2009 4:45 pm
Assunto: Re: RES: Campo Hora
lucassouzace
Enviar e-mail Enviar e-mail
 
Olá Colegas,
 
Porque não utilizar o campo TIME?
OBS: Só funciona no SQL Server 2008.
 
[]´s
 
Lucas Souza


--- Em sex, 9/10/09, Renato Romero Lopes <renato@...> escreveu:

De: Renato Romero Lopes <renato@...>
Assunto: RES: [mssql-l] Campo Hora
Para: mssql-l@...
Data: Sexta-feira, 9 de Outubro de 2009, 9:29

 

Carlos/André

 

É o 114

 

Select Convert(varchar( 20),GetDate( ),114)

 

Renato Romero Lopes

renato@puc-campinas .edu.br

http://www.puc- campinas. br

 


De: mssql-l@yahoogrupos .com.br [mailto:mssql- l@yahoogrupos. com.br] Em nome de Carlos Ligeiro
Enviada em: sexta-feira, 9 de outubro de 2009 12:07
Para: mssql-l@yahoogrupos .com.br
Assunto: Re: [mssql-l] Campo Hora

 

 

Tem o Datepart e tb vc pode fazer um convert(varchar, data, 108) não lembro ao certo o 100 da vida, mas testa do 100 ao 113 que vc encontra :)

 

Um abraço

 

Carlos Ligeiro

2009/10/9 André <deco0_07@yahoo. com.br>

 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 




--
Carlos Ligeiro



Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10 - Celebridades - Música - Esportes

#29541 De: "deco0_07" <deco0_07@...>
Data: Sex, 9 de Out de 2009 5:07 pm
Assunto: Re: RES: Campo Hora
deco0_07
Enviar e-mail Enviar e-mail
 
Funcionou perfeitamente!!Obrigado aos dois!
Agora outra pergunta..desculpem abusar da boa vontade hehe
Pra que serve a palavra reservada TIME?
Eu ate tentei criar campo com ela, mas vi que não era um tipo de dado..

[]'s

--- Em mssql-l@..., "Renato Romero Lopes" <renato@...> escreveu
>
> Carlos/André
>
>
>
> É o 114
>
>
>
> Select Convert(varchar(20),GetDate(),114)
>
>
>
> Renato Romero Lopes
>
> renato@...
>
> http://www.puc-campinas.br
>
>
>
>   _____

#29542 De: Alexandre Gaigalas <alexandre@...>
Data: Sex, 9 de Out de 2009 2:52 pm
Assunto: Re: Campo Hora
al_ga_net
Enviar e-mail Enviar e-mail
 
Opa,

No SQL Server 2008 tem o TIME sozinho, nas versões anteriores somente DATETIME.

Você pode extrair somente a data usando um CONVERT:

SELECT CONVERT(VARCHAR, GETDATE(), 108)

Ou extraindo cada uma das partes:

SELECT DATEPART(hour, GETDATE()), DATEPART(minute, GETDATE()), DATEPART(second, GETDATE())

[]s
--
Alexandre Gomes Gaigalas
alexandre@...
http://Alexandre.Gaigalas.Net


2009/10/9 André <deco0_07@...>
 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 



#29543 De: Nildo <nilldo@...>
Data: Sex, 9 de Out de 2009 2:52 pm
Assunto: Re: Banco com períodos de lentidão.
ofsoarez
Enviar e-mail Enviar e-mail
 
Dá uma olhada no que foi registrado no log de eventos do servidor e no log do SQL neste intervalo de tempo. Talvez isso lhe dê alguma dica

2009/10/9 Evandro Siqueira <vansiqq@...>
O Servidor não é dedicado. Ele também é controlador de domínio. Não tem
antivírus nem nenhum outro processo externo. Quem consome os recursos é
o mssql mesmo. Já verifiquei os jobs do mssql e não tem nenhum rodando
nesse horário... nem nenhuma query que justifique esse nível de operação
do banco.

por isso que perguntei se existe algum processo interno do banco, pq
quem consome os recursos é ele e os jobs que eu conheço não estão em
atividade durante esse período de lentidão.

--
[]’s.

Evandro Siqueira
Programador de Sistemas
L’essentiel Lingerie
(79) 3254-5511 Ramal 218
skype: evandro.lessentiel


Nildo escreveu:
>
>
> Seu servidor é dedicado para o SGBD? Tem antivírus ou algum outro
> processo externo que possa estar agendado e consumindo recursos?
>
> 2009/10/8 Rodrigo Ribeiro <dbconsultoria@...
> <mailto:dbconsultoria@...>>
>
>
>
>     Evandro,
>
>     Execute o sql server profiler, e verifique se existe alguma query
>     ou procedure de algum tipo sendo executada.
>
>     Como é um problema que se repete diariamente, verifica se não há
>     nenhum JOB sendo executado no horário, ou alguma tarefa do
>     mantainance plan sendo executada como um reindex de index defrag
>     por exemplo.
>
>     Dá uma revisada nestes ítens e depois volta aqui para comentar
>     como foi...
>
>     abs
>
>     Rodrigo
>     www.tsqlmaster.net <http://www.tsqlmaster.net>
>
>
>     2009/10/8 Evandro Siqueira <vansiqq@...
>     <mailto:vansiqq@...>>
>
>         Boa tarde a todos,
>
>         temos um banco de dados no SQLServer 2005 que tem hoje
>         aproximadamente
>         16Gb. O acesso a ele geralmente é muito rápido mas durante um
>         determinado período do dia, especificamente entre as 8 e as 9
>         da manhã,
>         ele empaca e praticamente para a fábrica. Só como exemplo,
>         temos um
>         relatório cuja consulta dura entre 3 e 7 segundos e durante
>         este período
>         essa consulta retorna entre 30 e 40 minutos!!!
>
>         Durante esse período o sql server consome aproximadamente 90% dos
>         recursos do servidor (DELL Power Edge 1900 Xeon Quad core 1.6
>         mhz, com 4
>         Mb de RAM e HD Sata II de 250 Gb), e depois de um tempo ele
>         volta ao
>         normal, sem nenhuma interferência. Já verifiquei se o banco
>         está rodando
>         algum processo fora do horário (backup, maintenance ou outro job
>         qualquer) e não encontro nada... existe algum outro processo
>         interno do
>         banco que possa estar causando esta lentidão? Tipo garbage
>         collection
>         (nem sei se tem isso... o Firebird tem) ou alguma rotina
>         interna de
>         manutenção do próprio sql server... e se for o caso tem como
>         configurar
>         para um horário mais "auspicioso"? tipo 2 ou 3 da madrugada,
>         por exemplo?
>
>         Fico grato a todos por qualquer sugestão que possa me ajudar a
>         sanar o
>         problema.
>
>         --
>         []’s.
>
>         Evandro Siqueira
>         Programador de Sistemas
>         L’essentiel Lingerie
>         (79) 3254-5511 Ramal 218
>         skype: evandro.lessentiel
>
>
>
>         ------------------------------------
>
>         Veja Oportunidades de Emprego em Ms-Sql Server e Tecnologias
>         relacionadas:
>         http://br.groups.yahoo.com/group/mssql-empregos/
>
>         Outros grupos de discussão:
>         http://www.webmundi.org/default.asp
>
>         Site de Tecnologia, Negócios e Variedades:
>         http://www.webmundi.com/ Links do Yahoo! Grupos
>
>
>
>
>
>
>     --
>     Rodrigo Ribeiro Gonçalves
>     =Analista de Sistemas=
>
>     Conheça meu blog: http://www.tsqlmaster.net
>
>
>
>
>


------------------------------------

Veja Oportunidades de Emprego em Ms-Sql Server e Tecnologias relacionadas:
http://br.groups.yahoo.com/group/mssql-empregos/

Outros grupos de discussão:
http://www.webmundi.org/default.asp

Site de Tecnologia, Negócios e Variedades:
http://www.webmundi.com/ Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
   http://br.groups.yahoo.com/group/mssql-l/

<*> Para sair deste grupo, envie um e-mail para:
   mssql-l-unsubscribe@...

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
   http://br.yahoo.com/info/utos.html




#29544 De: Alexandre Gaigalas <alexandre@...>
Data: Sex, 9 de Out de 2009 6:26 pm
Assunto: Re: Campo Hora
al_ga_net
Enviar e-mail Enviar e-mail
 
Na verdade o 114 é com milisegundos, quase nunca é necessário obtê-los assim. 108 vem HH:MM:SS apenas.
--
Alexandre Gomes Gaigalas
alexandre@...
http://Alexandre.Gaigalas.Net


2009/10/9 Carlos Ligeiro <cligeiro@...>
 

Opz então meu range falhava por 1 hehehehe
 
Eu não lembrava de cabeça.
 
Valeu aí pela dica pro nosso amigo
 
Um abraço
 
Carlos Ligeiro

2009/10/9 Renato Romero Lopes <renato@...>

 

Carlos/André

 

É o 114

 

Select Convert(varchar(20),GetDate(),114)

 

 


De: mssql-l@... [mailto:mssql-l@...] Em nome de Carlos Ligeiro
Enviada em: sexta-feira, 9 de outubro de 2009 12:07
Para: mssql-l@...
Assunto: Re: [mssql-l] Campo Hora

 

 

Tem o Datepart e tb vc pode fazer um convert(varchar, data, 108) não lembro ao certo o 100 da vida, mas testa do 100 ao 113 que vc encontra :)

 

Um abraço

 

Carlos Ligeiro

2009/10/9 André <deco0_07@...>

 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 




--
Carlos Ligeiro




--


#29545 De: "deco0_07" <deco0_07@...>
Data: Ter, 13 de Out de 2009 11:27 am
Assunto: Re: RES: Campo Hora
deco0_07
Enviar e-mail Enviar e-mail
 
Ahhh ta..só no 2008 funciona..
que esqueci de mencionar que utilizo 2005
[]'s

--- Em mssql-l@..., Lucas Souza <lucassouzace@...> escreveu
>
> Olá Colegas,
>  
> Porque não utilizar o campo TIME?
> OBS: Só funciona no SQL Server 2008.
>  
> []´s
>  
> Lucas Souza
> http://www.souzalucas.spaces.live.com

#29546 De: "aalmeida_ce" <aalmeida_ce@...>
Data: Ter, 13 de Out de 2009 12:22 pm
Assunto: Como listar os db criados
aalmeida_ce
Enviar e-mail Enviar e-mail
 
Sr(a),

Como faço para listar os bancos criados no MSSQL.
Preciso listar os bancos que não são padroes do MSSQL ( master, model, msdb,
northwind, pubs e tempdb )

Obrigado,

A.Almeida

#29547 De: Marcos Kirchner <marcoskirchner@...>
Data: Ter, 13 de Out de 2009 12:24 pm
Assunto: Re: Como listar os db criados
marcoskirchner
Enviar e-mail Enviar e-mail
 
Almeida,

SELECT name FROM sys.databases
WHERE <condicoes>

Como é uma view, você pode filtrar como precisar.



Abraço,
Marcos



2009/10/13 aalmeida_ce <aalmeida_ce@...>
 

Sr(a),

Como faço para listar os bancos criados no MSSQL.
Preciso listar os bancos que não são padroes do MSSQL ( master, model, msdb, northwind, pubs e tempdb )

Obrigado,

A.Almeida



#29548 De: Sandro do Prado Silva <sandrodoprado@...>
Data: Ter, 13 de Out de 2009 12:41 pm
Assunto: Re: Campo Hora
sandrodoprado
Enviar e-mail Enviar e-mail
 

vc pode criar datetime e usar o select abaixo para tirar a hora de um campo datetime, substituindo o select abaixo:

Ex1: select convert(varchar(12),Getdate(),108) as '108'

Ex2: select convert(varchar(12),NOME_CAMPO,108) as '108' fromTABELA
Espero ter ajudado
 
Sandro
2009/10/9 André <deco0_07@...>
 

Tenho algumas duvidas..

1-)Se quero criar um campo somente de hora, como eu crio? Tem que ser datetime sempre?

2-)Tem alguma função que extraia a hora de um campo datetime?

 

[]’s

André

 

 



#29550 De: Adonai Almeida <aalmeida_ce@...>
Data: Qua, 14 de Out de 2009 11:31 am
Assunto: Re: Como listar os db criados
aalmeida_ce
Enviar e-mail Enviar e-mail
 
Marcos,
 
Obrigado pela solução.
Apenas com um pequeno ajuste, é junto "sysdatabases".
 
A.Almeida


--- Em ter, 13/10/09, Marcos Kirchner <marcoskirchner@...> escreveu:

De: Marcos Kirchner <marcoskirchner@...>
Assunto: Re: [mssql-l] Como listar os db criados
Para: mssql-l@...
Data: Terça-feira, 13 de Outubro de 2009, 10:24

 
Almeida,

SELECT name FROM sys.databases
WHERE <condicoes>

Como é uma view, você pode filtrar como precisar.



Abraço,
Marcos



2009/10/13 aalmeida_ce <aalmeida_ce@ yahoo.com. br>
 
Sr(a),

Como faço para listar os bancos criados no MSSQL.
Preciso listar os bancos que não são padroes do MSSQL ( master, model, msdb, northwind, pubs e tempdb )

Obrigado,

A.Almeida




Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10 - Celebridades - Música - Esportes

#29551 De: Marcos Kirchner <marcoskirchner@...>
Data: Qua, 14 de Out de 2009 12:16 pm
Assunto: Re: Como listar os db criados
marcoskirchner
Enviar e-mail Enviar e-mail
 
Almeida,

A sysdatabases é uma compatibility view. Ela existe só para manter compatibilidade com scripts antigos, e deve ser removida em alguma versão futura.

A sys.databases é uma catalog view e é a forma recomendada de acessar estas informações. Além disso, ela possui muito mais detalhes do que a antiga sysdatabases.



Abraço,
Marcos




2009/10/14 Adonai Almeida <aalmeida_ce@...>
 

Marcos,
 
Obrigado pela solução.
Apenas com um pequeno ajuste, é junto "sysdatabases".
 
A.Almeida


--- Em ter, 13/10/09, Marcos Kirchner <marcoskirchner@...> escreveu:

De: Marcos Kirchner <marcoskirchner@...>
Assunto: Re: [mssql-l] Como listar os db criados
Para: mssql-l@...
Data: Terça-feira, 13 de Outubro de 2009, 10:24


 
Almeida,

SELECT name FROM sys.databases
WHERE <condicoes>

Como é uma view, você pode filtrar como precisar.



Abraço,
Marcos



2009/10/13 aalmeida_ce <aalmeida_ce@ yahoo.com. br>
 
Sr(a),

Como faço para listar os bancos criados no MSSQL.
Preciso listar os bancos que não são padroes do MSSQL ( master, model, msdb, northwind, pubs e tempdb )

Obrigado,

A.Almeida




Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10 - Celebridades - Música - Esportes



#29552 De: "Aparecido" <aparecidofonseca@...>
Data: Qua, 14 de Out de 2009 5:02 pm
Assunto: Consulta muito lenta.
grpcido
Enviar e-mail Enviar e-mail
 
Pessoal,
Tenho várias consulta que envolve alem de dois bancos de dados, varias tabelas e
uma grande quantidade de registros!
Note que criando procedure, tive um ganho muito grande, no entanto, quando
executo pelo SQL Management Studio, esta demorando em torno de 1 minutos e meio
2 minutos.
Isso seria tolerável pelo usuário. Levando em consideração que é uma consulta de
um periodo acumulado de 9 meses.

Mas quando levo para a aplicação rodar e mostrar tudo num relatório, me retorna
um time out.

Esse problema (time out) deve ser do SQL Server ou da aplicação ?
Será que teria como melhor ainda mais a performance da procedure ?


Estou usando SQL Server 2005 SP2.
Banco de dados 1Gb e 20Gb.
Aplicação que estou tentando rodar esta em C#.


Antecipadamente,
Obrigado.

Cido.

#29553 De: "Eduardo C. Nakashima" <eduardo.nakashima@...>
Data: Qua, 14 de Out de 2009 6:58 pm
Assunto: Re: Consulta muito lenta.
eduardo.naka...
Enviar e-mail Enviar e-mail
 
Cido,
  
     Não sou especialista em programação C#, mas como sou responsável pelo BD aqui, trabalhei num problema parecido:

     Há uma propriedade TimeOutCommand da conexão (se não me engano 30 segundos é o default). O programador responsável aumentou este tempo na aplicação e a consulta passou a executar perfeitamente!

         Exemplo: Conexao.TimeOutCommand = 300

Espero que te ajude,

Eduardo

2009/10/14 Aparecido <aparecidofonseca@...>
 

Pessoal,
Tenho várias consulta que envolve alem de dois bancos de dados, varias tabelas e uma grande quantidade de registros!
Note que criando procedure, tive um ganho muito grande, no entanto, quando executo pelo SQL Management Studio, esta demorando em torno de 1 minutos e meio 2 minutos.
Isso seria tolerável pelo usuário. Levando em consideração que é uma consulta de um periodo acumulado de 9 meses.

Mas quando levo para a aplicação rodar e mostrar tudo num relatório, me retorna um time out.

Esse problema (time out) deve ser do SQL Server ou da aplicação ?
Será que teria como melhor ainda mais a performance da procedure ?

Estou usando SQL Server 2005 SP2.
Banco de dados 1Gb e 20Gb.
Aplicação que estou tentando rodar esta em C#.

Antecipadamente,
Obrigado.

Cido.



#29554 De: Marcos Kirchner <marcoskirchner@...>
Data: Qua, 14 de Out de 2009 7:33 pm
Assunto: Re: Consulta muito lenta.
marcoskirchner
Enviar e-mail Enviar e-mail
 
Eduardo,

Realmente existe um timeout padrão no ADO.NET de 30 segundos, mas a propriedade para alterar isto é no objeto Command, e não no Connection.

SqlCommand cmd = new SqlCommand();
cmd.CommandTimeout = 100; // valor em segundos



Abraço,
Marcos




2009/10/14 Eduardo C. Nakashima <eduardo.nakashima@...>
 

Cido,
  
     Não sou especialista em programação C#, mas como sou responsável pelo BD aqui, trabalhei num problema parecido:

     Há uma propriedade TimeOutCommand da conexão (se não me engano 30 segundos é o default). O programador responsável aumentou este tempo na aplicação e a consulta passou a executar perfeitamente!

         Exemplo: Conexao.TimeOutCommand = 300

Espero que te ajude,

Eduardo

2009/10/14 Aparecido <aparecidofonseca@...>

 

Pessoal,
Tenho várias consulta que envolve alem de dois bancos de dados, varias tabelas e uma grande quantidade de registros!
Note que criando procedure, tive um ganho muito grande, no entanto, quando executo pelo SQL Management Studio, esta demorando em torno de 1 minutos e meio 2 minutos.
Isso seria tolerável pelo usuário. Levando em consideração que é uma consulta de um periodo acumulado de 9 meses.

Mas quando levo para a aplicação rodar e mostrar tudo num relatório, me retorna um time out.

Esse problema (time out) deve ser do SQL Server ou da aplicação ?
Será que teria como melhor ainda mais a performance da procedure ?

Estou usando SQL Server 2005 SP2.
Banco de dados 1Gb e 20Gb.
Aplicação que estou tentando rodar esta em C#.

Antecipadamente,
Obrigado.

Cido.




#29555 De: Nildo <nilldo@...>
Data: Qua, 14 de Out de 2009 8:48 pm
Assunto: Re: Consulta muito lenta.
ofsoarez
Enviar e-mail Enviar e-mail
 
Sugiro gerar um trace no momento de execução da procedure.
Salve o trace em uma tabela e depois consulte-a, ordenando pelo campo "duration"
Tente otimizar as consultas mais "pesadas", refazendo-as ou criando índices adequados.

Obs: Se depois de tudo, não melhorar a performance, tente o reindex para todo banco. Especialmente se as tabelas forem utilizadas para cargas....insert, delete e update para muitos registros, deixando os índices fragmentados.


2009/10/14 Marcos Kirchner <marcoskirchner@...>
 

Eduardo,

Realmente existe um timeout padrão no ADO.NET de 30 segundos, mas a propriedade para alterar isto é no objeto Command, e não no Connection.

SqlCommand cmd = new SqlCommand();
cmd.CommandTimeout = 100; // valor em segundos



Abraço,
Marcos




2009/10/14 Eduardo C. Nakashima <eduardo.nakashima@...>

 

Cido,
  
     Não sou especialista em programação C#, mas como sou responsável pelo BD aqui, trabalhei num problema parecido:

     Há uma propriedade TimeOutCommand da conexão (se não me engano 30 segundos é o default). O programador responsável aumentou este tempo na aplicação e a consulta passou a executar perfeitamente!

         Exemplo: Conexao.TimeOutCommand = 300

Espero que te ajude,

Eduardo

2009/10/14 Aparecido <aparecidofonseca@...>

 

Pessoal,
Tenho várias consulta que envolve alem de dois bancos de dados, varias tabelas e uma grande quantidade de registros!
Note que criando procedure, tive um ganho muito grande, no entanto, quando executo pelo SQL Management Studio, esta demorando em torno de 1 minutos e meio 2 minutos.
Isso seria tolerável pelo usuário. Levando em consideração que é uma consulta de um periodo acumulado de 9 meses.

Mas quando levo para a aplicação rodar e mostrar tudo num relatório, me retorna um time out.

Esse problema (time out) deve ser do SQL Server ou da aplicação ?
Será que teria como melhor ainda mais a performance da procedure ?

Estou usando SQL Server 2005 SP2.
Banco de dados 1Gb e 20Gb.
Aplicação que estou tentando rodar esta em C#.

Antecipadamente,
Obrigado.

Cido.





mensagens 29525 - 29555 de 32586   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
mensagens 29525 - 29555 de 32586   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
Avançado

Copyright © 2010 Yahoo! do Brasil Internet Ltda. Todos os direitos reservados.
Política de Privacidade - Termos do Serviço - Diretrizes - Ajuda