Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
1144
Assunto : SQL Server
Titulo: Utilizando variáveis de facet no ExecuteSQL para montagem de Policies

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon




A possibilidade de criar conditions para policies com a execução de instruções SQL torna as policies extremamente poderosas. Esse recurso se sobressai ainda mais se pudermos utilizar dentro da instrução SQL as variáveis dos facets. Mas como fazer isso ?

O ExecuteSQL (não confunda com sp_executesql) confunde um pouco pois ele próprio possui duas variáveis : @@ObjectName e @@SChemaName . Porém só essas duas, de forma bem limitada. Observei na web muitos confundindo isso, acreditando que poderiam usar variáveis de facet com @@ . Não podem, isso não é aceito.

A solução para as variáveis de facet é utilizar a função Concatenate.

Por exemplo, consideremos a seguinte query :

SELECT
recovery_model_desc AS [Recovery Model]
FROM sys.databases where name='Banco de Dados'

Como utilizar essa query junto com o facet database, com a devida variável para o nome de banco ? Eis a solução :

ExecuteSQL('String',Concatenate(Concatenate('SELECT
recovery_model_desc AS [Recovery Model]
FROM sys.databases where name=''',@Name), ''''))

Observe a forma como temos que utilizar 2 Concatenate, um para concatenar a primeira parte da instrução com a variável e outro para concatenar o resultado com a 2a parte da instrução, que neste exemplo é apenas o fechamento do apóstrofo.

Com isso conseguimos utilizar variáveis dentro das instruções SQL para uso em conditions do PBM, tornando as instruções SQL ainda mais poderosas.

Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
Nenhum comentário foi realizado ainda. Seja o primeiro !
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br