Arquivo da categoria: SQL Server

Fechar conexões do SQL Server

USE master
GO
SET NOCOUNT ON
DECLARE @DBName varchar(50)
DECLARE @spidstr varchar(8000)
DECLARE @ConnKilled smallint
SET @ConnKilled=0
SET @spidstr = ''

Set @DBName = 'DATABASE'
IF db_id(@DBName) < 4
BEGIN
PRINT 'Connections to system databases cannot be killed'
RETURN
END
SELECT @spidstr=coalesce(@spidstr,',' )+'kill '+convert(varchar, spid)+ '; '
FROM master..sysprocesses WHERE dbid=db_id(@DBName)

IF LEN(@spidstr) > 0
BEGIN
EXEC(@spidstr)
SELECT @ConnKilled = COUNT(1)
FROM master..sysprocesses WHERE dbid=db_id(@DBName)
END

Script para gerar classe de transporte

SELECT
		'[DataMember, DataColumnAttribute(Label = "' + COLUMN_NAME +  '", ColumnName = "' + COLUMN_NAME +  '", ColumnType = DataColumnType.NormalColumn)]' + CHAR(13)
		+ 'public ' +
		CASE DATA_TYPE
			WHEN 'bigint' THEN ' Nullable<Int64> '
			WHEN 'binary' THEN ' Nullable<> '
			WHEN 'bit' THEN ' Nullable<> '
			WHEN 'char' THEN ' Nullable<Char> '
			WHEN 'date' THEN ' Nullable<DateTime> '
			WHEN 'datetime' THEN ' Nullable<DateTime> '
			WHEN 'datetime2' THEN ' Nullable<DateTime> '
			WHEN 'datetimeoffset' THEN ' Nullable<DateTime> '
			WHEN 'decimal' THEN ' Nullable<Decimal> '
			WHEN 'float' THEN ' Nullable<Decimal> '
			WHEN 'geography' THEN ' Nullable<> '
			WHEN 'geometry' THEN ' Nullable<> '
			WHEN 'hierarchyid' THEN ' Nullable<> '
			WHEN 'image' THEN ' Nullable<> '
			WHEN 'int' THEN ' Nullable<Int32> '
			WHEN 'money' THEN ' Nullable<Decimal> '
			WHEN 'nchar' THEN ' String '
			WHEN 'ntext' THEN ' String '
			WHEN 'numeric' THEN ' Nullable<Decimal> '
			WHEN 'nvarchar' THEN ' String '
			WHEN 'real' THEN ' Decimal '
			WHEN 'smalldatetime' THEN ' Nullable<DateTime> '
			WHEN 'smallint' THEN ' Nullable<Int16> '
			WHEN 'smallmoney' THEN ' Nullable<Decimal> '
			WHEN 'sql_variant' THEN ' Nullable<> '
			WHEN 'sysname' THEN ' Nullable<> '
			WHEN 'text' THEN ' String '
			WHEN 'time' THEN ' Nullable<DateTime> '
			WHEN 'timestamp' THEN ' Nullable<Byte> '
			WHEN 'tinyint' THEN ' Nullable<Int16> '
			WHEN 'uniqueidentifier' THEN ' Nullable<Guid> '
			WHEN 'varbinary' THEN ' Nullable<Byte> '
			WHEN 'varchar' THEN ' String '
			WHEN 'xml' THEN ' String '
		END
		+ REPLACE(COLUMN_NAME,'_','') + ' { get; set; }' + CHAR(13)
FROM
		INFORMATION_SCHEMA.COLUMNS
WHERE
		TABLE_NAME LIKE 'TB_EMAIL'

Corrigir versão do CSF

Procedure para atualização de revisão do CSF

DECLARE @RC int
DECLARE @pIdProcesso INT
DECLARE @pIdIncidente int
DECLARE @pVrs varchar(15)

SET @pIdIncidente=-1 --Numero do processo
SET @pVrs='1.5.0.0'--Versao
SET @pIdProcesso=(SELECT Id_Processo FROM dbo.TB_CSF_INCIDENT WHERE id_incidente=@pIdIncidente)

EXECUTE @RC=[db_CSF].[dbo].[prU_CSF_Vsr_Sistema] @pIdProcesso,@pVrs

Visualizar o que esta sendo executado pelo processo do SQL Server

sp_usrinputbuffer 88

 

USE master
GO
CREATE PROCEDURE [dbo].[sp_usrinputbuffer]  
(  
 @SPID smallint,  -- O SPID a ser analizado  
 @WAIT tinyint = 1, -- Intervalo de repetição entre as verificações.Valor deve estar entre 0 e 60 segundos  
    -- Default é de 1 em 1 segundo  
 @NoLoop bit = 1  -- Se =1, o SPID é analizado apenas uma vez. Se =0 fica em loop até o final do processo.  
)  
AS  
BEGIN  
  
/********************************************************************************************  
sp_usrinputbuffer: Esta procedure permite identificar a instrução exata que está sendo   
executado por uma dada conexão. Semelhante ao DBCC INPUTBUFFER mas diferente desta, em caso   
de procedure, a proc mostra toda a instrução inteira e não apenas o nome da procedure. Muito boa  
para ser usada em conjunto com a procedure sp_usrheadblocker.  
  
Exemplo: sp_usrinputbuffer 54 (Onde 54 é o ID da conexão SPID)  
  
Obs: Se preferir, esta pode ser criada em qualquer banco, porém, ao executá-la deverá passar o nome da  
base onde a mesma se encontra. Exemplo: Base..sp_usrinputbuffer 54  
  
Author Original: Narayana Vyas Kondreddi  
Source: http://vyaskn.tripod.com  
Date Created: 18/12/2003  
Alterada por : Nilton Pinheiro  
WebSite: http://www.mcdbabrasil.com.br  
*********************************************************************************************/   
    
 SET NOCOUNT ON  
   
 DECLARE @sql_handle binary(20), @handle_found bit  
 DECLARE @stmt_start int, @stmt_end int  
 DECLARE @line varchar(8000), @wait_str varchar(8)  
   
 SET @handle_found = 0  
   
 IF @WAIT NOT BETWEEN 0 AND 60  
 BEGIN  
  RAISERROR('Valores válidos para @WAIT estão entre 0 e 60 segundos', 16, 1)  
  RETURN -1  
 END  
 ELSE  
 BEGIN  
  SET @wait_str = '00:00:' + RIGHT('00' + CAST(@WAIT AS varchar(2)), 2)  
 END  
   
 WHILE 1 = 1  
 BEGIN  
  SELECT @sql_handle = sql_handle,  
   @stmt_start = stmt_start/2,  
   @stmt_end = CASE WHEN stmt_end = -1 THEN -1 ELSE stmt_end/2 END  
   FROM master.dbo.sysprocesses  
   WHERE spid = @SPID  
    AND ecid = 0  
    
  IF @sql_handle = 0x0  
  BEGIN  
   IF @handle_found = 0  
   BEGIN  
    RAISERROR('Não pode encontrar o handle ou o SPID é inválido', 16, 1)  
    RETURN -1  
   END  
   ELSE  
   BEGIN  
    RAISERROR('Query/Stored procedure completada', 0, 1)  
    RETURN 0  
   END  
  END  
  ELSE  
  BEGIN  
   SET @handle_found = 1  
  END  
   Print '******** STATEMENT SENDO EXECUTADO NO MOMENTO ************'  
  Print ''  
  SET @line =   
  (  
   SELECT   
    SUBSTRING( text,  
      COALESCE(NULLIF(@stmt_start, 0), 1),  
      CASE @stmt_end   
       WHEN -1   
        THEN DATALENGTH(text)   
       ELSE   
        (@stmt_end - @stmt_start)   
          END  
     )   
      FROM ::fn_get_sql(@sql_handle)  
    )  
   
  Print @line  
   
  IF @NoLoop = 1  
  BEGIN  
   RETURN 0  
  END  
   
  WAITFOR DELAY @wait_str  
   
 END  
   
END  
  
GO

 

Remover todas as chaves estrangeiras do banco de dados

while(exists(select 1 from INFORMATION_SCHEMA.TABLE_CONSTRAINTS where CONSTRAINT_TYPE='FOREIGN KEY'))
begin
	declare @sql nvarchar(2000)
	SELECT TOP 1 @sql=('ALTER TABLE ' + TABLE_SCHEMA + '.[' + TABLE_NAME
	+ '] DROP CONSTRAINT [' + CONSTRAINT_NAME + ']')
	FROM information_schema.table_constraints
	WHERE CONSTRAINT_TYPE = 'FOREIGN KEY'
	exec (@sql)
end