Como: criar procedimentos armazenados e funções definidas pelo usuário
você pode usar Gerenciador de Servidores para criar procedimentos armazenados.Os procedimentos armazenados podem definir regras comerciais complexas, modificação de dados de controle, limitar o acesso com as permissões de segurança, fornecem a integridade de transação, e são geralmente o trabalho do banco de dados que seu aplicativo requer.
Com Microsoft SQL Server 2000 e posterior, você também pode usar Gerenciador de Servidores para criar funções definidas pelo usuário.Uma função definida pelo usuário é uma rotina que encapsula a lógica útil para uso em outras consultas.Quando modos de exibição são limitadas a uma única instrução SELECT, funções definidas pelo usuário podem ter instruções SELECT de múltiplas e fornecer uma lógica mais eficiente do que é possível com modos de exibição.
Funções definidas pelo usuário sempre retornam um valor.Dependendo do tipo de valor, retorna se encaixa de cada função definida pelo usuário em uma das três categorias:
A função definida pelo usuário de Afunção Escalar-avaliada pode retornar um valor escalar como um número inteiro ou um carimbo de data/hora.se uma função retorna um valor escalar, você pode usá-lo em uma consulta em qualquer lugar que você usaria um nome de coluna.
Função in-line Se uma função definida pelo usuário contém uma única instrução SELECT e a instrução é atualizável, o resultado tabulares retornado pela função é também atualizável.Essas funções são chamadas funções embutidas.Quando uma função in-line retorna uma tabela, você pode usar essa função na outra cláusula de consulta.Para obter mais informações, consulte Como: criar consultas usando algo além do mais uma tabela.
função de tabela valorizada Se uma função definida pelo usuário contém mais de uma declaração SELECT, ou contém uma declaração SELECT que é não atualizável, o resultado tabulares retornado pela função é não atualizável.Quando uma função de tabela valorizada retorna uma tabela, você pode usar essa função na outra cláusula de consulta.
Observação |
---|
Em os exemplos a seguir, é o de um acrônimo para o proprietário do banco de dados, e é usado para qualificar o nome de procedimento armazenado e de função definida pelo usuário.É o de um usuário que implica permissões para executar todas as atividades no banco de dados.Qualquer objeto criado por qualquer membro da função de sysadmin pertence ao de automaticamente.Em os exemplos a seguir, o qualificador do nome do do é incluído. |
Observação |
---|
Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos da interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Configurações de Visual Studio. |
para criar um novo procedimento armazenado
Em o server Explorer, clique com o botão direito do mouse na pasta de Procedimentos armazenados ou qualquer procedimento armazenado em essa pasta.
Adicionar Novo Procedimento Armazenado Escolha no menu de atalho.
Um novo procedimento armazenado é criado com as seguintes instruções SQL de esqueleto:
CREATE PROCEDURE dbo.StoredProcedure1 /* ( @parameter1 datatype = default value, @parameter2 datatype OUTPUT ) */ AS /* SET NOCOUNT ON */ RETURN
Você pode substituir StoredProcedure1 na primeira linha com o nome do novo procedimento.Por exemplo, você pode usar MyProcedure como o nome:
CREATE PROCEDURE dbo.MyProcedure
Observação os procedimentos armazenados devem ter nomes exclusivos.Se você escolher um nome que já tenha sido atribuído a um outro procedimento armazenado, uma mensagem de erro adverte-o que um procedimento armazenado com esse nome já existe.
Escrever texto restante do procedimento no SQL.
Para mais informações e exemplos de procedimentos armazenados, consulte a documentação para o servidor de banco de dados.Se você estiver usando o Microsoft SQL Server, consulte “PARA CRIAR OS PROCEDIMENTO” livros online do SQL Server.
Para criar uma nova função definida pelo usuário
Em Gerenciador de Servidores, clique com o botão direito do mouse na pasta de Funções ou qualquer função em essa pasta.
Adicionar novo Aponte para e clique em Função Embutida, Função de Valores de Tabela, ou Função de Valor Escalar no menu de atalho.
Observação Você não pode modificar as instruções SQL de esqueleto para uma nova função nas instruções SQL para um tipo diferente da função e salvar os resultados.Por exemplo, se você inicia com uma função in-line, você não pode modificar as instruções SQL para uma função escalar- avaliada.O processo de salvar falhará.
Uma nova função definida pelo usuário é criada usando instruções SQL reduzida.Por exemplo, escolha Função de Valor Escalar exibe as seguintes instruções SQL de esqueleto:
CREATE FUNCTION dbo.Function1 ( /* @parameter1 datatype = default value, @parameter2 datatype */ ) RETURNS /* datatype */ AS BEGIN /* sql statement ... */ RETURN /* value */ END
Você pode substituir Function1 na primeira linha com o novo nome da função.Por exemplo, você pode usar MyFunction como o nome:
CREATE FUNCTION dbo.MyFunction
Observação Funções definidas pelo usuário devem ter nomes exclusivos.Se você escolher um nome que já tenha sido atribuído a outra função, uma mensagem de erro adverte-o que uma função com esse nome já existe.
Escrever texto restante da função o SQL.
Observação |
---|
Se o menu de atalho não oferece as opções necessárias, a versão do Visual Studio você está usando não pode suportar este recurso.Para obter mais informações, consulte: Edições de ferramentas de banco de dados Visual. |
Para mais informações e exemplos de funções definidas pelo usuário, consulte a documentação para o servidor de banco de dados.Se você estiver usando o Microsoft SQL Server, consulte “PARA CRIAR A FUNÇÃO” livros online do SQL Server.
Consulte também
Conceitos
Outros recursos
Trabalhando com procedimentos armazenados e funções definidas pelo usuário