Transact-SQL de procedimento
Para executar processos que não podem ser feitos usando uma única instrução Transact-SQL, você pode agrupar instruções Transact-SQL de vários modos:
-
Um lote é um grupo de uma ou mais instruções Transact-SQL que são enviadas de um aplicativo ao servidor como uma unidade. O Microsoft SQL Server executa cada lote como uma única unidade executável.
Usando procedimentos armazenados
Um procedimento armazenado é um grupo de instruções Transact-SQL que foram predefinidas e pré-compiladas no servidor. O procedimento armazenado pode aceitar parâmetros e pode retornar conjuntos de resultados, códigos de retorno e parâmetros de saída ao aplicativo de chamada.
-
Um gatilho é um tipo especial de procedimento armazenado. Ele não é chamado diretamente pelos aplicativos. Em vez disso, é executado sempre que um usuário executa uma modificação especificada (INSERT, UPDATE ou DELETE) em uma tabela.
-
Um script é uma série de instruções Transact-SQL armazenadas em um arquivo. O arquivo pode ser usado como entrada para o utilitário sqlcmd ou editor de códigos do SQL Server Management Studio. Os utilitários executam as instruções Transact-SQL armazenadas no arquivo então.
Os seguintes recursos do SQL Server permitem que você controle o uso de várias instruções Transact-SQL de cada vez:
-
Isso lhe permite armazenar dados para uso como entrada em uma instrução Transact-SQL posterior. Por exemplo, você pode codificar uma consulta que precisa de valores de dados diferentes especificados na cláusula WHERE cada vez que a consulta é executada. Você pode escrever a consulta para usar variáveis na cláusula WHERE e lógica de código para preencher as variáveis com dados apropriados. Os parâmetros de procedimentos armazenados são uma classe especial de variáveis.
-
Isso lhe permite incluir lógica condicional. Por exemplo, se o país for Canadá, execute uma série de instruções Transact-SQL. Se o país for Reino Unido, execute uma outra série de instruções Transact-SQL.
-
Isso lhe permite personalizar o modo que o SQL Server responde a problemas. Você pode especificar ações apropriadas para serem tomadas quando houver erros, ou mostrar mensagens de erro personalizadas que são mais informativas a um usuário do que um erro genérico do SQL Server.