Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Agora que Mary pode acessar o banco de dados TestData , talvez você queira criar alguns objetos de banco de dados, como uma exibição e um procedimento armazenado, e conceder a Mary acesso a eles. Uma exibição é uma instrução SELECT armazenada e um procedimento armazenado é uma ou mais instruções Transact-SQL executadas como um lote.
As exibições são consultadas como tabelas e não aceitam parâmetros. Procedimentos armazenados são mais complexos que exibições. Procedimentos armazenados podem ter parâmetros de entrada e saída e conter instruções para controlar o fluxo do código, como instruções IF e WHILE. É uma boa prática de programação usar procedimentos armazenados para todas as ações repetitivas no banco de dados.
Para este exemplo, você usará CREATE VIEW para criar uma exibição que seleciona apenas duas das colunas na tabela Produtos . Em seguida, você usará CREATE PROCEDURE para criar um procedimento armazenado que aceita um parâmetro de preço e retorna apenas os produtos que custam menos do que o valor do parâmetro especificado.
Para criar uma visualização
Execute a instrução a seguir para criar uma exibição muito simples que executa uma instrução select e retorna os nomes e preços de nossos produtos para o usuário.
CREATE VIEW vw_Names AS SELECT ProductName, Price FROM Products; GO
Teste a exibição
Exibições são tratadas como tabelas. Use uma instrução
SELECTpara acessar uma exibição.SELECT * FROM vw_Names; GO
Para criar um procedimento armazenado
A instrução a seguir cria um
pr_Namesde nome de procedimento armazenado, aceita um parâmetro de entrada denominado@VarPricedo tipo de dadosmoney. O procedimento armazenado imprime a instruçãoProducts less thanconcatenada com o parâmetro de entrada que é alterado do tipo de dadosmoneypara o tipo de dados de caracterevarchar(10). Depois, o procedimento executa uma instruçãoSELECTna exibição, passando o parâmetro de entrada como parte da cláusulaWHERE. Isso retorna todos os produtos que custam menos do que o valor do parâmetro de entrada.CREATE PROCEDURE pr_Names @VarPrice money AS BEGIN -- The print statement returns text to the user PRINT 'Products less than ' + CAST(@VarPrice AS varchar(10)); -- A second statement starts here SELECT ProductName, Price FROM vw_Names WHERE Price < @varPrice; END GO
Testar o procedimento armazenado
Para testar o procedimento armazenado, digite e execute a instrução a seguir. O procedimento deve retornar os nomes dos dois produtos inseridos na tabela
Products, na Lição 1, com um preço menor que10.00.EXECUTE pr_Names 10.00; GO
Próxima tarefa da lição
Concedendo acesso a um objeto de banco de dados
Consulte Também
CREATE VIEW (Transact-SQL)
CRIAR PROCEDIMENTO (Transact-SQL)