Ir para conteúdo
Fórum Script Brasil

Tonblz

Membros
  • Total de itens

    9
  • Registro em

  • Última visita

Sobre Tonblz

Tonblz's Achievements

0

Reputação

  1. Boa tarde. Tenho um servidor (apenas com o banco de dados) aqui na empresa,que fica lento durante um período do dia (normalmente de manha (entre 9 às 10)), rodando o Performance Monitor e o SQL Server Profiler, não encontramos nada de "anormal" para essa lentidão. Consultas básicas do dia a dia e algumas jobs(que rodar procedures). 8 GB RAM, podemos aumentar, mas tenho que justificar o porque desse lentidão, além das ferramentas acimas, tenho como identificar o porque dessa lentidão ? é pouco memória ? Desde já agradeço pela atenção. Wellington
  2. Tonblz

    Erro SQL 2008

    Fulvio, boa tarde. cara mudei o nivel, mas o problema continua. ta complicado mesmo assim obrigado pela atenção abraços,
  3. Tonblz

    Erro SQL 2008

    Boa tarde pessoal, fiz a migração do sql 2000 para o 2008, porém quando executamos consultas (pesadas) no sql 2008, algumas máquinas dão errro máquinas no WXP erro, máquinas no W Seven funciona normal, abaix o erro. [DBNETLIB][ConnectionOpen(PreLoginHanshake()).]Genereal network error. Check your network documentation. podem me ajudar ? abraços, Ton
  4. Pessoal, bom dia. preciso de ajudar no sql 2000 tenho um packages que executa com sucesso, porém ao colocar ela dentro de um job, dá erro. na verdade, não sei como criar um job para executar packages, os jobs que tenho, são para backups. package: exporta Pedidos_Import podem me ajudar ? abraços, Wellington
  5. beleza fulvio, vou tentar então obrigado.
  6. Bom dia, tenho um banco de dados no sql 2000 (Produção), criei mais um como desenvolvimento, fiz a importação do banco de produção para o desenvolvimento (ambos no mesmo servidor), ele copiou as tabelas, consultas e usuários.Porém não copiou as diagramas e procuderes. Como posso copiar os Diagrmas e procuderes do banco produçao para o banco desenvolvimento ? Abraços, Ton
  7. Tonblz

    Cursor no SQL

    Boa dia galera, podem em ajudar, ao desenvolver uma proc no sql 2008,usando cursor, da os erros abaixo Msg 16916, Level 16, State 1, Procedure dbo.SPI_WELLINGTON, Line 135 A cursor with the name 'C_PARADAS' does not exist. Msg 16916, Level 16, State 1, Procedure dbo.SPI_WELLINGTON, Line 136 A cursor with the name 'C_PARADAS' does not exist. obs: mas eu fiz a criação do cursos. abaixo o código da proc USE [sPI_BD_PER] GO /****** Object: StoredProcedure [dbo].[dbo.SPI_WELLINGTON] Script Date: 12/06/2011 19:49:56 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[dbo.SPI_WELLINGTON] AS DECLARE @DTINI AS DATETIME,@DTFIM AS DATETIME BEGIN DECLARE @ERRO AS VARCHAR(500) BEGIN TRY DECLARE @IDPARADA AS INT,@IDMAQUINA AS INT,@IDORDEM AS INT,@IDMOTIVO1 AS INT DECLARE @IDMOTIVO2 AS INT,@IDMOTIVO3 AS INT DECLARE @T1 AS FLOAT,@T2 AS FLOAT,@T3 AS FLOAT DECLARE @HORAINI AS DATETIME, @HORAFIM AS DATETIME DECLARE @DATAI AS DATE,@DATAF AS DATE --PARAMETROS FIXOS DECLARE @HORA00 AS DATETIME,@HORA06 AS DATETIME,@HORA14 AS DATETIME,@HORA22 AS DATETIME DECLARE @HORA0559 AS DATETIME,@HORA1359 AS DATETIME,@HORA2159 AS DATETIME, @HORA2359 AS DATETIME SET @HORA00 ='00:00:00' SET @HORA06 ='06:00:00' SET @HORA14 ='14:00:00' SET @HORA22 ='22:00:00' SET @HORA0559 ='05:59:59' SET @HORA1359 ='13:59:59' SET @HORA2159 ='21:59:59' SET @HORA2359 ='23:59:59' --PARAMETROS VARIAVEIS DECLARE @DATAINI AS DATETIME, @DATAFIM AS DATETIME SET @DTINI = '20110920 00:00:00' SET @DTFIM = '20110923 23:59:59' -- LIMPA TABELA TEMP PARADAS POR TURNO DELETE FROM SPI_TB_MAQUINA_PARADAS_TEMP -- CURSOR QUE BUSCAR AS PARADAS DURANTE PERÍODO SOLICITADO DECLARE C_PARADAS CURSOR FOR SELECT PAR.ID_MAQUINA_PARADAS ,PAR.ID_MAQUINA ,PAR.ID_ORDEM_PRODUCAO ,PAR.ID_MOTIVO1 ,PAR.ID_MOTIVO2 ,PAR.ID_MOTIVO3 ,CONVERT(VARCHAR(19),DT_INICIO,103) AS DT_INI ,CONVERT(VARCHAR(19),DT_FIM,103) AS DT_FIN ,CONVERT(VARCHAR(19),DT_INICIO,108) AS HRA_INI ,CONVERT(VARCHAR(19),DT_FIM,108) AS HR_FIN FROM SPI_TB_MAQUINA_PARADAS AS PAR INNER JOIN SPI_TB_MAQUINA AS MAQ ON MAQ.ID_MAQUINA = PAR.ID_MAQUINA WHERE PAR.ID_MAQUINA_PARADAS= 450252 -- ABRIR CURSOR OPEN C_PARADAS FETCH NEXT FROM C_PARADAS INTO @IDPARADA,@IDMAQUINA,@IDORDEM,@IDMOTIVO1 ,@IDMOTIVO2,@IDMOTIVO3,@DATAINI,@DATAFIM,@HORAINI,@HORAFIM WHILE (@@FETCH_STATUS = 0) BEGIN SET @IDPARADA = @IDPARADA SET @IDMAQUINA = @IDMAQUINA SET @IDORDEM = @IDORDEM SET @IDMOTIVO1 = @IDMOTIVO1 SET @IDMOTIVO2 = @IDMOTIVO2 SET @IDMOTIVO3 = @IDMOTIVO3 SET @IDMOTIVO2 = @IDMOTIVO2 SET @T1 = 0 SET @T2 = 0 SET @T3 = 0 IF ((@DATAINI >= @DTINI AND @DATAFIM <= @DTFIM)) BEGIN --COMEÇA E TERMINA NO PERÍODO IF (DATEDIFF(DAY,@DATAINI,@DATAFIM)=0)BEGIN SET @DATAI = @DATAINI SET @DATAF = @DATAFIM IF (@HORAFIM< @HORA06) BEGIN SET @T3 = DATEDIFF(MINUTE,@HORAINI,@HORAFIM) END ELSE IF (@HORAINI < @HORA06) AND (@HORAFIM<= @HORA1359) BEGIN SET @T1 = DATEDIFF(MINUTE,@HORA06,@HORAFIM) SET @T3 = DATEDIFF(MINUTE,@HORAINI,@HORA06) END ELSE IF (@HORAINI < @HORA06) AND (@HORAFIM<= @HORA2159) BEGIN SET @T1 = DATEDIFF(MINUTE,@HORA06,@HORA14) SET @T2 = DATEDIFF(MINUTE,@HORA14,@HORAFIM) SET @T3 = DATEDIFF(MINUTE,@HORAINI,@HORA06) END END END --INSERINDO DADOS NA TABELA (SPI_TB_MAQUINA_PARADA_TURNOS_TEMP) INSERT INTO SPI_TB_MAQUINA_PARADAS_TEMP ( IDPARADA,IDMAQUINA,IDORDEM,IDMOTIVO1,IDMOTIVO2, IDMOTIVO3,DATAINICIAL,DATAFINAL,TURNO1,TURNO2,TURNO3) VALUES ( @IDPARADA,@IDMAQUINA,@IDORDEM,@IDMOTIVO1,@IDMOTIVO2,@IDMOTIVO3,@DATAI,@DATAF,@T1,@T2,@T3) --PASSANDO PARA PROXIMO REGISTRO FETCH NEXT FROM C_ORDEM_MAQ INTO @IDPARADA,@IDMAQUINA,@IDORDEM,@IDMOTIVO1,@IDMOTIVO2 ,@IDMOTIVO3,@DATAINI,@DATAFIM,@HORAINI,@HORAFIM END--WHILE CLOSE C_PARADAS DEALLOCATE C_PARADAS END TRY BEGIN CATCH SET @ERRO = ERROR_PROCEDURE() + ': Line(' + CONVERT(varchar,ERROR_LINE()) + ') # ' + ERROR_MESSAGE() INSERT INTO SPI_TB_LOG_PROCEDURES (DATA, MENSAGEM) VALUES (GETDATE(), @ERRO) CLOSE C_PARADAS DEALLOCATE C_PARADAS CLOSE C_PARADAS DEALLOCATE C_PARADAS END CATCH END
  8. Tonblz

    Problemas com DATEDIFF

    Bom dia Fulvio, o resultado de 307,5 min é referente ao intervalo de parada (somente do primeiro turno), pois o primeiro turno vai até às 13.59, passando isso não posso considerar mais os min 372 é total da parada, mais no primeiro turno terminando às 13:59 teoricamente o tempo de parada ficaria assim t1 307 t2 64,3 t3 0 total = 372 a pergunta é como usar o horá com fixa mais a data não DATEDIFF(MINUTE,DT_INICIO,'data não pode ser fixa é o campo DT_FIM ' 13:59:59') abraços, Ton
  9. Boa noite galera, estou com problemas para usar o DATEDIFF(MINUTE), pois tenho que dividir o dia em 3 turnos 1º Turno > 6:00 às 13:59 2º Turno > 14:00 às 21:59 3º Turno > 22:00 às 23:59 + 0:00 às 05:59 (outro dia) ABAIXO A CONSULTA SELECT DATEDIFF(MINUTE,DT_INICIO,DT_FIM) AS T1 FROM PARADA WHERE IDPARADA = 64436 Data_Inicio 2011-01-11 08:52:54.887 Data Final 2011-01-11 15:04:03.923 T1 = 372 PORÉM O RESULTADO CERTO É 307 (POIS O HORÁRIO FINAL PASSOU DAS 13:59, FINAL DO PRIMEIRO TURNO MAS EU NÃO POSSO COLOCAR DATEDIFF(MINUTE,DT_INICIO,'2011-01-11 13:59:59') , POIS O '2011-01-11' NÃO PODE SER FIXO, APENAS O HORÁRIO, COLOCO DEIXAR ESSE CONSULTA FLEXIVEL DE ACORDO COM A MINHA NECESSIDADE ? Desde já agradeço pela atenção abraços, Ton
×
×
  • Criar Novo...