NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!
UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI
« Lição anterior | ![]() |
Δ Página principal | ![]() |
¤ Capítulos | ![]() |
Próxima lição » |
SQL Server 2005 - CURSO COMPLETO Autor: Júlio Battisti |
|||
---|---|---|---|
Lição 159 - Capítulo 10 - Criando Stored Procedures com Parâmetros de Entrada | |||
A utilização de parâmetros de entrada permite a criação de Stored Procedures mais flexíveis. Vamos considerar o Stored Procedure usp_PedidosDoBrasil, criado no exemplo anterior. Da maneira como foi criado, sem parâmetros de entrada, o critério de pesquisa será sempre o mesmo: PaísDeDestino = ‘Brasil’. Podemos criar um Stored Procedure mais genérico, o qual aceita o nome do País de Destino como parâmetro de entrada e retorna somente os pedidos para o país passado como parâmetro de entrada. Para criar um Stored Procedure com um ou mais parâmetros de entrada, utilizamos a seguinte sintaxe: CREATE PROCEDURE nome_StorProc @nome_parâmetro tipo_parâmetro AS comando 1 comando 2 ... comando n Caso tenhamos mais do que um parâmetro de entrada, devemos separá-los por vírgula, conforme indicado a seguir: CREATE PROCEDURE @nome_parâmetro1 tipo_parâmetro1, @nome_parâmetro2 tipo_parâmetro2, ... @nome_parâmetron tipo_parâmetron AS comando 1 comando 2 ... comando n Para utilizar o parâmetro nos comandos do Stored Procedure, basta utilizar @nome_do_parâmetro. Vamos a alguns exemplos práticos, os quais facilitarão o entendimento desta sintaxe. Exemplo 1: Criar um Stored Procedure chamado usp_Pedidos_PaisParametro. Este store procedure será criado no Banco de Dados NwindAccess, da instância SERVIDOR\SQL2005. O Stored Procedure deve aceitar um parâmetro de entrada chamado Pais, o qual é do tipo nvarchar(25), e usará o valor passado neste parâmetro como critério de pesquisa, para retornar apenas os pedidos para o país passado como parâmetro de entrada. Para criar o Stored Procedure usp_Pedidos_PaisParametro, siga os passos indicados a seguir: 1. Abra o SQL Server Management Studio e navegue até o banco de dados NwindAccess, da instância SERVIDOR\SQL2005. 2. Clique com o botão direito do mouse no banco de dados NwindAccess e, no menu de opções que é exibido, clique em New Query. 3. Será aberta a janela de execução de comandos T-SQL, sendo o banco de dados NwindAccess, o banco de dados atual. Execute o seguinte comando: 4. Digite o seguinte comando: USE NwindAccess 4. Para executar o Stored Procedure usp_Pedidos_PaisParametro, passando Campinas como parâmetro, utilizamos o seguinte comando: Execute usp_Pedidos_PaisParametro “EUA” Na Figura 10.3, temos os resultados da execução do Stored Procedure, com EUA sendo passado como parâmetro de entrada.
5. Para executar o Stored Procedure usp_Pedidos_PaisParametro, passando França como parâmetro, utilizamos o seguinte comando: Execute usp_Pedidos_PaisParametro “França” Na Figura 10.4, temos os resultados da execução do Stored Procedure, com França sendo passado como parâmetro de entrada.
Observe que agora temos um Stored Procedure bem mais flexível, onde podemos informar o critério de pesquisa para o campo PaísDeDestino, simplesmente passando um valor para o parâmetro de entrada.. 6. Mantenha a janela de execução de comandos T-SQL aberta, pois vamos continuar a utilizá-la, no próximo exemplo. Exemplo prático 02: Criar um Stored Procedure chamado usp_Ped_Cid_País. Este será criado no Banco de Dados NwindAccess, da instância SERVIDOR\QL2005. O Stored Procedure deve aceitar dois parâmetros de entrada: um chamado cidade, o qual é do tipo nvarchar(15), e outro chamado país, o qual é do tipo nvarchar(15). O Stored Procedure usará os valores passados nestes parâmetros como critérios de pesquisa, para retornar apenas os pedidos para a cidade e país de destino passados como parâmetros. Para criar o Stored Procedure usp_Ped_Cid_País, siga os passos indicados a seguir: 1. Abra o SQL Server Management Studio e navegue até o banco de dados NwindAccess, da instância SERVIDOR\SQL2005. 2. Clique com o botão direito do mouse no banco de dados NwindAccess e, no menu de opções que é exibido, clique em New Query. 3. Será aberta a janela de execução de comandos T-SQL, sendo o banco de dados NwindAccess, o banco de dados atual. Execute o seguinte comando: 3. Digite o seguinte comando: USE NwindAccess 4. Para executar o Stored Procedure usp_Ped_Cid_País, passando “Buenos Aires” como valor para o parâmetro cidade, e “Argentina” como valor para o parâmetro país, utilizamos o seguinte comando: Execute usp_Ped_Cid_País “Buenos Aires”, “Argentina” 5. Para executar o Stored Procedure usp_Ped_Cid_País, passando “Sao Paulo” como valor para o parâmetro cidade, e “Alemanha” como valor para o parâmetro país, utilizamos o seguinte comando: Execute usp_Ped_Cid_País “Sao Paulo”, “Alemanha” Evidentemente que esta última execução não irá retornar nenhum registro, apenas a seguinte mensagem será exibida: (0 row(s) affected) Se passarmos apenas o parâmetro cidade, ignorando o parâmetro país, conforme indicado no seguinte comando: Execute usp_Ped_Cid_País “Sao Paulo” iremos obter a seguinte mensagem de erro: Msg 201, Level 16, State 4, Procedure usp_Ped_Cid_País, Line 0 Procedure or Function 'usp_Ped_Cid_País' expects parameter '@país', which was not supplied.. Observe que a mensagem informa que é esperado um parâmetro chamado país (@país) e que este parâmetro não foi informado, ao ser feita a execução do stored procedure. Se passarmos parâmetros a mais, conforme indicado no seguinte comando: Execute usp_Ped_Cid_País “Sao Paulo”, “Alemanha”, “12/06/2001” iremos obter a seguinte mensagem de erro: Msg 8144, Level 16, State 2, Procedure usp_Ped_Cid_País, Line 0 Procedure or function usp_Ped_Cid_País has too many arguments specified. 6. Feche a janela de execução de comandos T-SQL. |
|||
« Lição anterior | ![]() |
Δ Página principal | ![]() |
¤ Capítulos | ![]() |
Próxima lição » |
Universidade do Access - Curso Completo de Access
com tudo para você dominar o Access - do Básico ao
Avançado - até a Criação de Sistemas Profissionais
Completos - Passo a Passo - Tela a Tela
Aplica-se ao Access 2019, 2016, 2013 e 2010!
Para todos os detalhes, acesse:
Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434
Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208
Todos os direitos reservados, Júlio Battisti 2001-2025 ®
LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO
DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI