none
parametros em uma view RRS feed

  • Pergunta

  • Bom dia,

    Sei que em uma procedure eu consigo "setar" paramtros para serem lidos pelo select.

    ou seja.. valores que vem da aplicação que "consome" essa view

    Numa view isso é possível?

    alguem tem algum exemplo?

    obrigado.


    • Editado Hawk B terça-feira, 7 de abril de 2015 12:18
    terça-feira, 7 de abril de 2015 12:15

Respostas

  • Hawk,

    O funcionamento de uma VIEW é bem diferente de uma STORED PROCEDURE. Na VIEW você poderá filtrar as informações por colunas previamente disponíveis na sua instrução SELECT.

    O "setar" seria através da cláusula WHERE, segue um exemplo abaixo:

    CREATE VIEW vwPessoa AS
    SELECT CD_PESSOA, NM_PESSOA
    FROM TB_PESSOA WHERE YEAR(DT_NASCIMENTO) > 2000;
    GO
    
    SELECT * FROM vwPessoa WHERE NM_PESSOA LIKE 'a%'
    GO


    Para maiores informações veja:

    https://msdn.microsoft.com/pt-br/library/ms187956.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    • Sugerido como Resposta Eduardo.Romero quarta-feira, 8 de abril de 2015 16:58
    • Marcado como Resposta Eduardo.Romero quarta-feira, 8 de abril de 2015 16:58
    terça-feira, 7 de abril de 2015 13:05
    Moderador

Todas as Respostas

  • View não tem como setar parametros, parametros podem ser setados em Procedures e Functions.


    Uma imagem vale mais do que mil palavras, mas ocupa 3 mil vezes mais espaço em disco

    terça-feira, 7 de abril de 2015 12:23
  • Hawk,

    O funcionamento de uma VIEW é bem diferente de uma STORED PROCEDURE. Na VIEW você poderá filtrar as informações por colunas previamente disponíveis na sua instrução SELECT.

    O "setar" seria através da cláusula WHERE, segue um exemplo abaixo:

    CREATE VIEW vwPessoa AS
    SELECT CD_PESSOA, NM_PESSOA
    FROM TB_PESSOA WHERE YEAR(DT_NASCIMENTO) > 2000;
    GO
    
    SELECT * FROM vwPessoa WHERE NM_PESSOA LIKE 'a%'
    GO


    Para maiores informações veja:

    https://msdn.microsoft.com/pt-br/library/ms187956.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    • Sugerido como Resposta Eduardo.Romero quarta-feira, 8 de abril de 2015 16:58
    • Marcado como Resposta Eduardo.Romero quarta-feira, 8 de abril de 2015 16:58
    terça-feira, 7 de abril de 2015 13:05
    Moderador
  • Deleted
    terça-feira, 7 de abril de 2015 18:05