22
nov
10

SQL Server 2012 “Denali” CTP 1 – RESULT SETS – Parte 1

Bom dia pessoas,

Mais uma novidade do SQL Server 2011 é uso de RESULT SETS para o comando EXECUTE / EXEC, mas para o que serve isso? Basicamente, este recurso ajuda a “tipificar” (ou “tipar”) as consultas resultantes do EXECUTE / EXEC (ex.: Consultas dinâmicas e stored procedures).

Para o primeiro exemplo, sem muita complexidade, informamos os nomes e tipos das colunas de um resultado do comando EXEC:

DECLARE @CONSULTA VARCHAR(MAX)

SET @CONSULTA = 'SELECT object_id, name FROM master.sys.tables'

EXEC (@CONSULTA)
WITH RESULT SETS 
(
	(
		Codigo INT,
		Nome VARCHAR(250)
	)
)

Uma alternativa é utilizar tipos ou tabelas para “tipificar” de forma mais prática estes resultados:

CREATE TABLE TABELA_MODELO (
	Codigo INT,
	Nome VARCHAR(250)
)

CREATE TYPE TIPO_MODELO AS TABLE (
	Codigo INT,
	Nome VARCHAR(250)
)

GO

DECLARE @CONSULTA VARCHAR(MAX)

SET @CONSULTA = 'SELECT object_id, name FROM master.sys.tables'

EXEC (@CONSULTA)
WITH RESULT SETS 
(
	AS OBJECT dbo.TABELA_MODELO
)

EXEC (@CONSULTA)
WITH RESULT SETS 
(
	AS TYPE dbo.TIPO_MODELO
)

Assim como é possível “tipificar” um dos resultados do comando EXEC, também é abranger todos os resultados que venham a aparecer:

EXEC sp_help 'sp_help'
WITH RESULT SETS 
(
	(
		Nome VARCHAR(250),
		[Owner] VARCHAR(250),
		Tipo VARCHAR(250),
		Data DATETIME
	),
	(
		Parametro VARCHAR(250),
		Tipo VARCHAR(250),
		Tamanho INT,
		Precisao INT,
		Escala INT,
		Posicao INT,
		[Collation] VARCHAR(250)
	)
)

About these ads

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

Você está comentando usando sua conta WordPress.com. Sair / Mudar )

Imagem do Twitter

Você está comentando usando sua conta Twitter. Sair / Mudar )

Foto do Facebook

Você está comentando usando sua conta Facebook. Sair / Mudar )

Conectando a %s


Sobre o blog

Blog que há três anos trata de SQL Server, .NET Framework, PowerShell, soluções para problemas comuns e não tão comuns assim, informações sobre ferramentas diversas e o que vier na cabeça do MCT Paulo R. Pereira.

Twitter


Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 349 outros seguidores

%d bloggers like this: