Como criar um procedimento armazenado (SQL Server Management Studio)

Este tópico descreve como criar um procedimento armazenado Transact-SQL usando o Pesquisador de Objetos no SQL Server Management Studio e fornece um exemplo que cria um procedimento armazenado simples no banco de dados AdventureWorks2008R2.

Para criar um procedimento armazenado

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados e, então, expanda essa instância.

  2. Expanda Bancos de Dados, expanda o banco de dados ao qual pertence o procedimento armazenado e expanda Programação.

  3. Clique com o botão direito do mouse em Procedimentos Armazenados e clique em Novo Procedimento Armazenado.

  4. No menu Consulta, clique em Especificar Valores para Parâmetros de Modelo.

  5. Na caixa de diálogo Especificar Valores para Parâmetros de Modelo, a coluna Valor contém valores sugeridos para os parâmetros. Aceite os valores ou os substitua por valores novos e, então, clique em OK.

  6. No editor de consultas, substitua a instrução SELECT pelas instruções para o seu procedimento.

  7. Para testar a sintaxe, no menu Consulta, clique em Analisar.

  8. Para criar o procedimento armazenado, no menu Consulta, clique em Executar.

  9. Para salvar o script, no menu Arquivo, clique em Salvar. Aceite o nome de arquivo ou substitua-o por um nome novo e, então, clique em Salvar.

Observação sobre segurançaObservação sobre segurança

Valide toda a entrada de usuário. Não concatene a entrada de usuário antes de validá-la. Nunca execute um comando construído por uma entrada de usuário inválida. Para obter mais informações, consulte Injeção SQL.

Para criar um exemplo de procedimento armazenado

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados e, então, expanda essa instância.

  2. Expanda Bancos de Dados, expanda o banco de dados do AdventureWorks2008R2 e, em seguida, expanda Programação.

  3. Clique com o botão direito do mouse em Procedimentos Armazenados e clique em Novo Procedimento Armazenado.

  4. No menu Consulta, clique em Especificar Valores para Parâmetros de Modelo.

  5. Na caixa de diálogo Especificar Valores para Parâmetros de Modelo, digite os seguintes valores para os parâmetros mostrados.

    Parâmetro

    Valor

    Author

    Seu nome

    Create Date

    A data de hoje

    Descrição

    Retorna dados de funcionário.

    Procedure_name

    HumanResources.uspGetEmployees

    @Param1

    @LastName

    @Datatype_For_Param1

    nvarchar(50)

    Default_Value_For_Param1

    NULL

    @Param2

    @FirstName

    @Datatype_For_Param2

    nvarchar(50)

    Default_Value_For_Param2

    NULL

  6. Clique em OK.

  7. No editor de consultas, substitua a instrução SELECT pela seguinte instrução:

        SELECT FirstName, LastName, JobTitle, Department
        FROM HumanResources.vEmployeeDepartment
        WHERE FirstName = @FirstName AND LastName = @LastName;
    
  8. Para testar a sintaxe, no menu Consulta, clique em Analisar. Se uma mensagem de erro for retornada, compare as instruções com as informações acima e corrija conforme necessário.

  9. Para criar o procedimento armazenado, no menu Consulta, clique em Executar.

  10. Para salvar o script, no menu Arquivo, clique em Salvar. Digite o novo nome do arquivo e clique em Salvar.

  11. Para executar o procedimento armazenado, na barra de ferramentas, clique em Nova Consulta.

  12. Na janela de consulta, digite as seguintes instruções:

    USE AdventureWorks2008R2;
    GO
    EXECUTE HumanResources.uspGetEmployees @FirstName = N'Diane', @LastName = N'Margheim';
    GO
    
  13. No menu Consulta, clique em Executar.