Você usará o Microsoft SQL Server como banco de dados. O conceito abordado neste tutorial é o mesmo para a maioria dos sistemas de gerenciamento de banco de dados relacionais (RDBMS), mas as sintaxes variam — ainda assim, a ideia apresentada aqui funciona bem em todos os bancos.
Procedure armazenada é um bloco de instruções SQL em um sistema de gerenciamento de banco de dados relacional (RDBMS). Normalmente é escrita por programadores, administradores de banco (DBAs) e analistas de dados, ficando salva para reutilização em vários programas. Também pode existir em diferentes tipos, a depender do RDBMS. No entanto, há dois tipos essenciais presentes em qualquer RDBMS:
user-defined stored procedure (definida pelo usuário)
system stored procedure (do sistema)
Uma stored procedure é um código pré-compilado que fica armazenado (em cache) para reutilização. Ter código em cache facilita muito a manutenção — você não precisa alterar a mesma lógica em vários lugares — e também ajuda a manter a segurança.
Criando uma tabela
Agora você vai criar uma tabela chamada table_Employees assim:
CREATE TABLE table_Employees
(
EmployeeId INT PRIMARY KEY NOT NULL,
EmployeeFirstName VARCHAR(25) NOT NULL,
EmployeeLastName VARCHAR(25) NOT NULL,
EmployeeGender VARCHAR(25) NOT NULL,
EmployeeDepartmentID INT
)Tecnologia
A tabela reúne informações sobre funcionários de uma empresa e inclui as seguintes colunas:
EmployeeId: chave primária, única, do tipo inteiro. Em muitos cenários, esse valor é auto-incrementado.
EmployeeFirstName: primeiro nome do funcionário, do tipo caractere, e não pode ficar em branco.
EmployeeLast Name: sobrenome do funcionário, também do tipo caractere e obrigatório.
EmployeeGender: gênero do funcionário, também do tipo caractere.
EmployeeDepartmentId: id do departamento do funcionário, do tipo inteiro.
Você pode escrever uma query para inserir valores na tabela. O padrão para inserir valores é:
Depois de inserir os valores, a table_Employees estará criada e populada.
Como criar uma stored procedure definida pelo usuário
Uma stored procedure permite que você escreva uma query uma vez, dê um nome a ela e execute quantas vezes precisar. Ao executar as queries, você verá a pasta Programmability->Stored Procedures e um arquivo chamado dbo.uprocGetEmployees.
No exemplo, houve uma alteração na pasta: EMPLOYEE->Programmability->Stored Procedures->dbo.uprocGetEmployessGenderAndDepartment
O conceito é parecido com funções em linguagens como Python ou Java. A procedure acima se chama "uprocGetEmployeesGenderAndDepartment" e recebe os parâmetros @EmployeeGender e @EmployeeDepartmentId. Eles são "chamados" ao passarmos os valores necessários para a procedure — o que pode ser feito de duas formas, explicadas a seguir.
Os parâmetros do programa são @EmployeeGender e @EmployeeDepartmentId, que recebem valores quando a procedure é executada.
Os valores podem ser especificados de duas maneiras. Você pode usar qualquer uma para executar a stored procedure com múltiplos parâmetros.
Especificando os nomes dos parâmetros na query e passando os valores desejados:
Ou pela posição, na mesma ordem dos parâmetros da stored procedure, passando os valores correspondentes:
Alterando a stored procedure
Você também pode alterar uma stored procedure usando o comando ALTER PROCEDURE.
ALTERPROCEDURE uprocGetEmployeesGenderAndDepartment
@EmployeeGender nvarchar(25),
@EmployeeDepartmentId int
BEGINSELECT EmployeeFirstName,EmployeeGender,EmployeeDepartmentId FROM table_Employees WHERE
EmployeeGender = @EmployeeGender AND EmployeeDepartmentId = @EmployeeDepartmentId
ENDTecnologia
Excluindo uma stored procedure
Stored procedures podem ser removidas rapidamente com os seguintes comandos:
DROP PROC <> DROP PROCEDURE <>
Adicionando segurança com criptografia
O cadeado indicado na imagem à esquerda mostra que a stored procedure está criptografada, garantindo acesso apenas a pessoas autorizadas.
Conclusão
Você acabou de aprender o básico sobre stored procedures definidas pelo usuário, em conceitos que valem para qualquer RDBMS. Quer ir além? Acesse a DataCamp e faça o curso Intermediate SQL Server. Este tutorial da Microsoft sobre Stored Procedures também é uma ótima referência.
Se você deseja começar a usar o SQL, nós o ajudamos. Neste tutorial de SQL, apresentaremos as consultas SQL, uma ferramenta poderosa que nos permite trabalhar com os dados armazenados em um banco de dados. Você verá como escrever consultas SQL, aprenderá sobre
Saiba como usar os acionadores SQL para automatizar tarefas, manter a integridade dos dados e melhorar o desempenho do banco de dados. Experimente exemplos práticos como os comandos CREATE, ALTER e DROP no MySQL e no Oracle.
Explore como o uso de um alias SQL simplifica os nomes de colunas e tabelas. Saiba por que usar um alias SQL é fundamental para melhorar a legibilidade e gerenciar uniões complexas.
Você usará o Microsoft SQL Server como banco de dados. O conceito abordado neste tutorial é o mesmo para a maioria dos sistemas de gerenciamento de banco de dados relacionais (RDBMS), mas as sintaxes variam — ainda assim, a ideia apresentada aqui funciona bem em todos os bancos.
Procedure armazenada é um bloco de instruções SQL em um sistema de gerenciamento de banco de dados relacional (RDBMS). Normalmente é escrita por programadores, administradores de banco (DBAs) e analistas de dados, ficando salva para reutilização em vários programas. Também pode existir em diferentes tipos, a depender do RDBMS. No entanto, há dois tipos essenciais presentes em qualquer RDBMS:
Uma stored procedure é um código pré-compilado que fica armazenado (em cache) para reutilização. Ter código em cache facilita muito a manutenção — você não precisa alterar a mesma lógica em vários lugares — e também ajuda a manter a segurança.
Criando uma tabela
Agora você vai criar uma tabela chamada
table_Employeesassim:A tabela reúne informações sobre funcionários de uma empresa e inclui as seguintes colunas:
Você pode escrever uma query para inserir valores na tabela. O padrão para inserir valores é:
Depois de inserir os valores, a table_Employees estará criada e populada.
Como criar uma stored procedure definida pelo usuário
Uma stored procedure permite que você escreva uma query uma vez, dê um nome a ela e execute quantas vezes precisar. Ao executar as queries, você verá a pasta Programmability->Stored Procedures e um arquivo chamado dbo.uprocGetEmployees.
A sintaxe para criar uma stored procedure é:
Você pode criar uma stored procedure usando um dos comandos abaixo:
Evite criar procedures com o prefixo "sp_". No exemplo, a procedure foi criada com o nome:
uprocGetEmployees.Como executar a stored procedure
Para executar uma stored procedure, você pode usar três abordagens e rodar assim:
No exemplo acima, use o nome da procedure uprocGetEmployees e execute a query.
Stored procedure com parâmetros
Uma stored procedure pode aceitar um ou vários parâmetros. Entender múltiplos parâmetros ajuda a compreender bem o caso de um único parâmetro.
A sintaxe para criar uma stored procedure com múltiplos parâmetros é:
No exemplo, houve uma alteração na pasta:
EMPLOYEE->Programmability->Stored Procedures->dbo.uprocGetEmployessGenderAndDepartment
O conceito é parecido com funções em linguagens como Python ou Java. A procedure acima se chama "uprocGetEmployeesGenderAndDepartment" e recebe os parâmetros @EmployeeGender e @EmployeeDepartmentId. Eles são "chamados" ao passarmos os valores necessários para a procedure — o que pode ser feito de duas formas, explicadas a seguir.
Os parâmetros do programa são @EmployeeGender e @EmployeeDepartmentId, que recebem valores quando a procedure é executada.
Os valores podem ser especificados de duas maneiras. Você pode usar qualquer uma para executar a stored procedure com múltiplos parâmetros.
Alterando a stored procedure
Você também pode alterar uma stored procedure usando o comando ALTER PROCEDURE.
Excluindo uma stored procedure
Stored procedures podem ser removidas rapidamente com os seguintes comandos:
DROP PROC <> DROP PROCEDURE <>
Adicionando segurança com criptografia
O cadeado indicado na imagem à esquerda mostra que a stored procedure está criptografada, garantindo acesso apenas a pessoas autorizadas.
Conclusão
Você acabou de aprender o básico sobre stored procedures definidas pelo usuário, em conceitos que valem para qualquer RDBMS. Quer ir além? Acesse a DataCamp e faça o curso Intermediate SQL Server. Este tutorial da Microsoft sobre Stored Procedures também é uma ótima referência.