SlideShare uma empresa Scribd logo
1 de 40
..:: SQL SERVER ::.. Consulta e Programação de Banco de Dados Stored Procedures& Triggers FTE Gestão de TI - 2009.2
SQL SERVER - Stored Procedure O que é? Os procedimentos armazenados são uma coleção de comandos SQL, compilados e armazenados no Banco de Dados. Geralmente eles representam tarefas repetitivas e aceitam parâmetros de entrada e saída. Eles podem retornar uma coleção de dados e sempre retorna um valor indicando sua execução ou erro. Os procedimentos armazenados melhoram o tráfego na rede, melhora a performance das aplicações, criam mecanismos de segurança e melhoram a manutenção dos códigos SQLe das aplicações que acessam o banco de dados.
SQL SERVER - Stored Procedure Modelo de Acesso ao Banco de Dados sem utilização de Stored Procedures
SQL SERVER - Stored Procedure Modelo de Acesso ao Banco de Dados utilizando Stored Procedures
SQL SERVER - Stored Procedure Ao executar a procedure pela 1ª vez ela é compilada e a cada execução seus resultados são colocados em cache, o cache é semelhante a uma memória que guarda as últimas operações do BD, caso a procedure seja executada novamente ela pega o resultado do cache diminuindo o esforço do BD e aumentando a velocidade de acesso.
SQL SERVER - Stored Procedure Onde localizar asprocedures no Management Studio?
SQL SERVER - Stored Procedure Como criar uma SP? Basta acessar a sua base de dados e criar uma nova query e digitar os comandos responsáveis pela criação e executá-los
SQL SERVER - Stored Procedure Como criar uma SP? Resultado:
SQL SERVER - Stored Procedure Como alterar uma SP? Basta acessar a sua base de dados e criar uma nova query e digitar os comandos responsáveis pela alteração e executá-los
SQL SERVER - Stored Procedure Como alterar uma SP? Resultado da alteração:
SQL SERVER - Stored Procedure Como atalho você pode clicar com o botão direito no nome da procedure e selecionar a opção “Modificar” Será aberta uma janela com os comandos da procedure, em seguida, basta alterar e executar.
SQL SERVER - Stored Procedure Procedures com Parâmetros: A procedure é criada normalmente só que após o seu nome você especifica quais os parâmetros (@parâmetro) e o tipo do mesmo.
SQL SERVER - Stored Procedure Procedures com Parâmetros: Resultado da execução:
SQL SERVER - Stored Procedure Como deletar as procedures criadas? Basta clicar com o botão direito na procedure e selecionar -> Excluir
SQL SERVER - Stored Procedure Como excluir uma SP? Basta acessar a sua base de dados e criar uma nova query e digitar os comandos responsáveis para exclusão de dados na tabela e executá-los:
SQL SERVER - Stored Procedure Como executar as procedures ?
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #1 Exemplo de SP - Select Simples */ CREATE PROCEDURE SP_tbEmpregado AS BEGIN SELECT * FROM empregado END EXEC SP_tbEmpregado
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #2 Exemplo de SP - Select + ORDER BY */ CREATE PROCEDURE SP_ListarEmpregados AS BEGIN SELECT * FROM empregado ORDER BY nome DESC END EXEC SP_ListarEmpregados
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #2 Alterar Procedure - Select + ORDER BY */ ALTER PROCEDURE SP_ListarEmpregados AS BEGIN SELECT * FROM empregado ORDER BY cpf ASC END EXEC SP_ListarEmpregados
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #3 Exemplo de SP - Select com parâmetros */ CREATE PROCEDURE SP_NomeDepartamento @numero varchar(40) AS BEGIN SELECT nome FROM departamento WHERE numero=@numero END EXEC SP_NomeDepartamento 3
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #4 Exemplo de SP - Select múltiplos parâmetros */ CREATE PROCEDURE SP_tbProjeto @numero INT, @depart VARCHAR(30) AS BEGIN SELECT * FROM projeto WHERE numero=@numero AND depart=@depart END EXEC SP_tbProjeto 1, 2
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #5 Exemplo de SP - Exemplo Insert múltiplos parâmetros */ CREATE PROCEDURE SP_Add_Empregado @cpf CHAR(11), @nome VARCHAR(40), @salario FLOAT, @dt_nasc DATETIME, @alocacao INT, @supervisor CHAR(11) AS BEGIN INSERT INTO empregado (cpf, nome, salario, dt_nasc, alocacao, supervisor) VALUES (@cpf, @nome, @salario, @dt_nasc, @alocacao, @supervisor) END EXEC SP_Add_Empregado7, 'Lucas Ferreira Costa', 15000, '07/01/1989', 2, null SELECT *  FROM empregado
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #6 Exemplo de SP - Exemplo Updatemúltiplos parâmetros */ CREATE PROCEDURE SP_AtualizarDepartamento @numero CHAR(11), @nome VARCHAR(40), @gerente CHAR(11), @dt_inicio_ger DATETIME AS BEGIN UPDATE departamento SET nome=@nome, gerente=@gerente, dt_inicio_ger=@dt_inicio_ger WHERE numero=@numero END EXEC SP_AtualizarDepartamento 1, 'Diretoria', null, null SELECT *  FROM departamento
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #7 Exemplo de SP - Exemplo Delete com parâmetros */ CREATE PROCEDURE SP_DelEmpregado @cpf CHAR(11) AS BEGIN DELETE empregado WHERE cpf=@cpf END EXEC SP_DelEmpregado 7
SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #8 Exemplo de SP - Procedure com parâmetro de saída */ CREATE PROCEDURE SP_SomaSalario (@SOMA FLOAT OUTPUT) AS BEGIN SELECT @Soma=sum(salario) FROM empregado END DECLARE @Salario_Total FLOAT EXEC SP_SomaSalario @Salario_Total OUTPUT PRINT 'Salário Total: R$'+(CAST(@Salario_Total AS VARCHAR(20))) /* Fim - StoredProcedures com a Turma. */
SQL SERVER - Stored Procedure Quais as vantagens do trabalho com Procedures? ,[object Object]
 Criação de um repositório unificado dos códigos SQL
 Aumento de performance das aplicações
 Maior segurança
 Diminuição do tráfego da rede,[object Object]
SQL SERVER - Trigger O que é? A Trigger(ou gatilho) é um objeto que é automaticamente executado assim que efetuado um INSERT, DELETE ou UPDATE na tabela. Entre as vantagens da utilização da Trigger, podemos destacar: ,[object Object]
 Inserir o conteúdo de uma coluna a partir do conteúdo de outras colunas;
 Alterar outras tabelas a partir da inclusão ou alteração de dados da tabela que estamos utilizando.,[object Object]
 Os gatilhos AFTER disparam após todas as restrições terem sido satisfeitas, e após todas as alterações terem sido aplicadas à tabela de destino.,[object Object]
UPDATE;
DELETE.,[object Object]
 A Tabela para o qual o Trigger irá ser criado;
 Quando o Trigger deverá ser disparado;
 Os comandos que determinam qual ação o Trigger deverá executar.,[object Object]
O resultado da execução de um Trigger é retornado para a aplicação que o chamou;

Mais conteúdo relacionado

Mais procurados

1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Descrição formal de Casos de Uso
Descrição formal de Casos de UsoDescrição formal de Casos de Uso
Descrição formal de Casos de UsoNatanael Simões
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POODaniel Brandão
 
Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptRodrigo Branas
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugolGabriel Faustino
 
Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010Joeldson Costa Damasceno
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareCloves da Rocha
 
Introdução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxIntrodução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxMarceloRosenbrock1
 

Mais procurados (20)

Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Descrição formal de Casos de Uso
Descrição formal de Casos de UsoDescrição formal de Casos de Uso
Descrição formal de Casos de Uso
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Aula 4 - Estruturas condicionais
Aula 4 - Estruturas condicionaisAula 4 - Estruturas condicionais
Aula 4 - Estruturas condicionais
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Curso javascript básico
Curso javascript básicoCurso javascript básico
Curso javascript básico
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScript
 
Aula 07 Css - Parte 1
Aula 07   Css - Parte 1Aula 07   Css - Parte 1
Aula 07 Css - Parte 1
 
Aula4 levantamento requisitos
Aula4 levantamento requisitosAula4 levantamento requisitos
Aula4 levantamento requisitos
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugol
 
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOINCurso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
 
Node.js e Express
Node.js e ExpressNode.js e Express
Node.js e Express
 
Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Introdução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxIntrodução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptx
 

Destaque

SQL Server 2012
SQL Server 2012SQL Server 2012
SQL Server 2012Hcode
 
Prática de laboratório utilizando views, stored procedures e triggers
Prática de laboratório   utilizando views, stored procedures e triggersPrática de laboratório   utilizando views, stored procedures e triggers
Prática de laboratório utilizando views, stored procedures e triggersDaniel Maia
 
Curso Básico de Pl Sql Oracle
Curso Básico de Pl Sql OracleCurso Básico de Pl Sql Oracle
Curso Básico de Pl Sql Oracleluisguil
 
T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012Rodrigo Ribeiro
 
Ingles tecnico i para informática 2013 en oficio
Ingles tecnico i para informática 2013  en oficioIngles tecnico i para informática 2013  en oficio
Ingles tecnico i para informática 2013 en oficioParalafakyou Mens
 
Glossário de inglês técnico para informática
Glossário de inglês técnico para informáticaGlossário de inglês técnico para informática
Glossário de inglês técnico para informáticaesb2174
 
Inglês.com.textos para informática
Inglês.com.textos para informáticaInglês.com.textos para informática
Inglês.com.textos para informáticaJeziel L. C.
 
Proposta de Consultoria
Proposta de ConsultoriaProposta de Consultoria
Proposta de ConsultoriaTR Consulting
 
Junções e subconsultas
Junções e subconsultasJunções e subconsultas
Junções e subconsultasjulianaveregue
 

Destaque (12)

Triggers no SQL Server
Triggers no SQL ServerTriggers no SQL Server
Triggers no SQL Server
 
SQL Server 2012
SQL Server 2012SQL Server 2012
SQL Server 2012
 
Exercícios PL/SQL
Exercícios PL/SQLExercícios PL/SQL
Exercícios PL/SQL
 
Prática de laboratório utilizando views, stored procedures e triggers
Prática de laboratório   utilizando views, stored procedures e triggersPrática de laboratório   utilizando views, stored procedures e triggers
Prática de laboratório utilizando views, stored procedures e triggers
 
Curso Básico de Pl Sql Oracle
Curso Básico de Pl Sql OracleCurso Básico de Pl Sql Oracle
Curso Básico de Pl Sql Oracle
 
T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012
 
Ingles tecnico i para informática 2013 en oficio
Ingles tecnico i para informática 2013  en oficioIngles tecnico i para informática 2013  en oficio
Ingles tecnico i para informática 2013 en oficio
 
Glossário de inglês técnico para informática
Glossário de inglês técnico para informáticaGlossário de inglês técnico para informática
Glossário de inglês técnico para informática
 
Apostila de-ingles-tecnico-informatica-2012
Apostila de-ingles-tecnico-informatica-2012Apostila de-ingles-tecnico-informatica-2012
Apostila de-ingles-tecnico-informatica-2012
 
Inglês.com.textos para informática
Inglês.com.textos para informáticaInglês.com.textos para informática
Inglês.com.textos para informática
 
Proposta de Consultoria
Proposta de ConsultoriaProposta de Consultoria
Proposta de Consultoria
 
Junções e subconsultas
Junções e subconsultasJunções e subconsultas
Junções e subconsultas
 

Semelhante a SQL Server Stored Procedures & Triggers

Net Coders Ladies SQL
Net Coders Ladies SQL Net Coders Ladies SQL
Net Coders Ladies SQL Aline Lavorato
 
Sql Server Stored Procedures
Sql Server   Stored ProceduresSql Server   Stored Procedures
Sql Server Stored Proceduresalexdutra
 
Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8Emiliano Barbosa
 
Desenvolvimento de um CRUD utilizando Stored Procedure
Desenvolvimento de um CRUD utilizando Stored ProcedureDesenvolvimento de um CRUD utilizando Stored Procedure
Desenvolvimento de um CRUD utilizando Stored ProcedureFernando Roberto Proença
 
Refactoring Databases - Estrategias
Refactoring Databases - EstrategiasRefactoring Databases - Estrategias
Refactoring Databases - EstrategiasIsmael
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL BásicoIgor Alves
 
Apostila de sql oracle (pt br)
Apostila de sql   oracle (pt br)Apostila de sql   oracle (pt br)
Apostila de sql oracle (pt br)Sandro Freitas
 
Apresentação Oracle SGBD
Apresentação Oracle SGBDApresentação Oracle SGBD
Apresentação Oracle SGBDDenis Vieira
 
UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6Wagner Bianchi
 
Modulo-02-Aula-04-certificao-sqlser.pptx
Modulo-02-Aula-04-certificao-sqlser.pptxModulo-02-Aula-04-certificao-sqlser.pptx
Modulo-02-Aula-04-certificao-sqlser.pptxAugustoNicolau2
 
Apostila: Curso de java III
Apostila: Curso de java IIIApostila: Curso de java III
Apostila: Curso de java IIIVerônica Veiga
 
(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - Subalgoritmos(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - SubalgoritmosCarlos Santos
 

Semelhante a SQL Server Stored Procedures & Triggers (20)

Stored procedure
Stored procedureStored procedure
Stored procedure
 
Stored procedure
Stored procedureStored procedure
Stored procedure
 
Aula1
Aula1Aula1
Aula1
 
Net Coders Ladies SQL
Net Coders Ladies SQL Net Coders Ladies SQL
Net Coders Ladies SQL
 
2832014 curso plsql
2832014 curso plsql2832014 curso plsql
2832014 curso plsql
 
Sql Server Stored Procedures
Sql Server   Stored ProceduresSql Server   Stored Procedures
Sql Server Stored Procedures
 
Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8
 
Desenvolvimento de um CRUD utilizando Stored Procedure
Desenvolvimento de um CRUD utilizando Stored ProcedureDesenvolvimento de um CRUD utilizando Stored Procedure
Desenvolvimento de um CRUD utilizando Stored Procedure
 
Oracleplsql
OracleplsqlOracleplsql
Oracleplsql
 
Refactoring Databases - Estrategias
Refactoring Databases - EstrategiasRefactoring Databases - Estrategias
Refactoring Databases - Estrategias
 
Java13
Java13Java13
Java13
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL Básico
 
Modulo 15 PSI
Modulo 15 PSIModulo 15 PSI
Modulo 15 PSI
 
Apostila de sql oracle (pt br)
Apostila de sql   oracle (pt br)Apostila de sql   oracle (pt br)
Apostila de sql oracle (pt br)
 
Python 04
Python 04Python 04
Python 04
 
Apresentação Oracle SGBD
Apresentação Oracle SGBDApresentação Oracle SGBD
Apresentação Oracle SGBD
 
UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6
 
Modulo-02-Aula-04-certificao-sqlser.pptx
Modulo-02-Aula-04-certificao-sqlser.pptxModulo-02-Aula-04-certificao-sqlser.pptx
Modulo-02-Aula-04-certificao-sqlser.pptx
 
Apostila: Curso de java III
Apostila: Curso de java IIIApostila: Curso de java III
Apostila: Curso de java III
 
(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - Subalgoritmos(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - Subalgoritmos
 

SQL Server Stored Procedures & Triggers

  • 1. ..:: SQL SERVER ::.. Consulta e Programação de Banco de Dados Stored Procedures& Triggers FTE Gestão de TI - 2009.2
  • 2. SQL SERVER - Stored Procedure O que é? Os procedimentos armazenados são uma coleção de comandos SQL, compilados e armazenados no Banco de Dados. Geralmente eles representam tarefas repetitivas e aceitam parâmetros de entrada e saída. Eles podem retornar uma coleção de dados e sempre retorna um valor indicando sua execução ou erro. Os procedimentos armazenados melhoram o tráfego na rede, melhora a performance das aplicações, criam mecanismos de segurança e melhoram a manutenção dos códigos SQLe das aplicações que acessam o banco de dados.
  • 3. SQL SERVER - Stored Procedure Modelo de Acesso ao Banco de Dados sem utilização de Stored Procedures
  • 4. SQL SERVER - Stored Procedure Modelo de Acesso ao Banco de Dados utilizando Stored Procedures
  • 5. SQL SERVER - Stored Procedure Ao executar a procedure pela 1ª vez ela é compilada e a cada execução seus resultados são colocados em cache, o cache é semelhante a uma memória que guarda as últimas operações do BD, caso a procedure seja executada novamente ela pega o resultado do cache diminuindo o esforço do BD e aumentando a velocidade de acesso.
  • 6. SQL SERVER - Stored Procedure Onde localizar asprocedures no Management Studio?
  • 7. SQL SERVER - Stored Procedure Como criar uma SP? Basta acessar a sua base de dados e criar uma nova query e digitar os comandos responsáveis pela criação e executá-los
  • 8. SQL SERVER - Stored Procedure Como criar uma SP? Resultado:
  • 9. SQL SERVER - Stored Procedure Como alterar uma SP? Basta acessar a sua base de dados e criar uma nova query e digitar os comandos responsáveis pela alteração e executá-los
  • 10. SQL SERVER - Stored Procedure Como alterar uma SP? Resultado da alteração:
  • 11. SQL SERVER - Stored Procedure Como atalho você pode clicar com o botão direito no nome da procedure e selecionar a opção “Modificar” Será aberta uma janela com os comandos da procedure, em seguida, basta alterar e executar.
  • 12. SQL SERVER - Stored Procedure Procedures com Parâmetros: A procedure é criada normalmente só que após o seu nome você especifica quais os parâmetros (@parâmetro) e o tipo do mesmo.
  • 13. SQL SERVER - Stored Procedure Procedures com Parâmetros: Resultado da execução:
  • 14. SQL SERVER - Stored Procedure Como deletar as procedures criadas? Basta clicar com o botão direito na procedure e selecionar -> Excluir
  • 15. SQL SERVER - Stored Procedure Como excluir uma SP? Basta acessar a sua base de dados e criar uma nova query e digitar os comandos responsáveis para exclusão de dados na tabela e executá-los:
  • 16. SQL SERVER - Stored Procedure Como executar as procedures ?
  • 17. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #1 Exemplo de SP - Select Simples */ CREATE PROCEDURE SP_tbEmpregado AS BEGIN SELECT * FROM empregado END EXEC SP_tbEmpregado
  • 18. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #2 Exemplo de SP - Select + ORDER BY */ CREATE PROCEDURE SP_ListarEmpregados AS BEGIN SELECT * FROM empregado ORDER BY nome DESC END EXEC SP_ListarEmpregados
  • 19. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #2 Alterar Procedure - Select + ORDER BY */ ALTER PROCEDURE SP_ListarEmpregados AS BEGIN SELECT * FROM empregado ORDER BY cpf ASC END EXEC SP_ListarEmpregados
  • 20. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #3 Exemplo de SP - Select com parâmetros */ CREATE PROCEDURE SP_NomeDepartamento @numero varchar(40) AS BEGIN SELECT nome FROM departamento WHERE numero=@numero END EXEC SP_NomeDepartamento 3
  • 21. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #4 Exemplo de SP - Select múltiplos parâmetros */ CREATE PROCEDURE SP_tbProjeto @numero INT, @depart VARCHAR(30) AS BEGIN SELECT * FROM projeto WHERE numero=@numero AND depart=@depart END EXEC SP_tbProjeto 1, 2
  • 22. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #5 Exemplo de SP - Exemplo Insert múltiplos parâmetros */ CREATE PROCEDURE SP_Add_Empregado @cpf CHAR(11), @nome VARCHAR(40), @salario FLOAT, @dt_nasc DATETIME, @alocacao INT, @supervisor CHAR(11) AS BEGIN INSERT INTO empregado (cpf, nome, salario, dt_nasc, alocacao, supervisor) VALUES (@cpf, @nome, @salario, @dt_nasc, @alocacao, @supervisor) END EXEC SP_Add_Empregado7, 'Lucas Ferreira Costa', 15000, '07/01/1989', 2, null SELECT * FROM empregado
  • 23. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #6 Exemplo de SP - Exemplo Updatemúltiplos parâmetros */ CREATE PROCEDURE SP_AtualizarDepartamento @numero CHAR(11), @nome VARCHAR(40), @gerente CHAR(11), @dt_inicio_ger DATETIME AS BEGIN UPDATE departamento SET nome=@nome, gerente=@gerente, dt_inicio_ger=@dt_inicio_ger WHERE numero=@numero END EXEC SP_AtualizarDepartamento 1, 'Diretoria', null, null SELECT * FROM departamento
  • 24. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #7 Exemplo de SP - Exemplo Delete com parâmetros */ CREATE PROCEDURE SP_DelEmpregado @cpf CHAR(11) AS BEGIN DELETE empregado WHERE cpf=@cpf END EXEC SP_DelEmpregado 7
  • 25. SQL SERVER - Stored Procedure Criação de Stored Procedure com a turma: /* #8 Exemplo de SP - Procedure com parâmetro de saída */ CREATE PROCEDURE SP_SomaSalario (@SOMA FLOAT OUTPUT) AS BEGIN SELECT @Soma=sum(salario) FROM empregado END DECLARE @Salario_Total FLOAT EXEC SP_SomaSalario @Salario_Total OUTPUT PRINT 'Salário Total: R$'+(CAST(@Salario_Total AS VARCHAR(20))) /* Fim - StoredProcedures com a Turma. */
  • 26.
  • 27. Criação de um repositório unificado dos códigos SQL
  • 28. Aumento de performance das aplicações
  • 30.
  • 31.
  • 32. Inserir o conteúdo de uma coluna a partir do conteúdo de outras colunas;
  • 33.
  • 34.
  • 36.
  • 37. A Tabela para o qual o Trigger irá ser criado;
  • 38. Quando o Trigger deverá ser disparado;
  • 39.
  • 40. O resultado da execução de um Trigger é retornado para a aplicação que o chamou;
  • 41. Não podemos usar em um Trigger os seguintes comandos SQL:ALTER DATABASE , ALTER TRIGGER, ALTER PROCEDURE, ALTER TABLE, CREATE DATABASE, CREATE INDEX, CREATE PROCEDURE, CREATE SCHEMA, CREATE TABLE, DROP DATABASE, DROP TABLE, DROP PROCEDURE, DROP TRIGGER, DROP INDEX, GRANT, RESTORE DATABASE. Entre outras.
  • 42. SQL SERVER - Trigger Criação de Triggers com a turma: /* #1 Exemplo de TRIGGER - Alerta do comando Insert */ CREATE TRIGGER TR_AlertaInsert ON empregado FOR INSERT AS PRINT 'Empregado cadastrado com sucesso!' insertinto empregado values (8,'Felipe Chagas Maciel', 3500, 08/10/1985, 2, '4'); select * from empregado
  • 43. SQL SERVER - Trigger Criação de Triggers com a turma: /* #2 Exemplo de TRIGGER - Utilizando a tabela INSERTED */ CREATE TRIGGER TR_TBinserted ON departamento FOR INSERT AS SELECT 'DADOS A SEREM INSERIDOS NA TABELA DEPARTAMENTO:' SELECT * FROM INSERTED GO INSERT INTO departamento VALUES (5,'Manutenção', Null, Null); SELECT * FROM departamento
  • 44. SQL SERVER - Trigger Criação de Triggers com a turma: /* #3 Exemplo de TRIGGER - Utilizando a tabela DELETED */ CREATE TRIGGER TR_TBdeleted ON departamento FOR DELETE AS SELECT 'DADOS A SEREM APAGADOS DA TABELA DEPARTAMENTO:' SELECT * FROM DELETED GO DELETE FROM departamento WHERE numero=5
  • 45. SQL SERVER - Trigger Criação de Triggers com a turma: /* #4 Exemplo de TRIGGER - Update mostrando o antes e depois da consulta */ CREATE TRIGGER TR_UpdateDepartamento ON departamento FOR UPDATE AS IF(SELECT COUNT(*) FROM DELETED) <> 0 SELECT * FROM DELETED SELECT * FROM INSERTED GO UPDATE departamento SET nome='Financeiro' WHERE nome='Finanças' select * from departamento
  • 46. SQL SERVER - Trigger Criação de Triggers com a turma: /* #5 Exemplo de TRIGGER - Alterar uma TRIGGER */ ALTER TRIGGER TR_AlertaInsert ON empregado FOR INSERT AS PRINT 'Funcionário cadastrado com sucesso!' INSERT INTO empregado VALUES (9,'João Britto Neto', 500, 07/01/1991, 1, '2'); SELECT * FROM empregado
  • 47. SQL SERVER - Trigger Criação de Triggers com a turma: /* #6 Exemplo de TRIGGER - Excluir uma TRIGGER */ DROP TRIGGER TR_AlertaInsert
  • 49. SQL SERVER Componentes: Durval Nóvoa Fagner Lima Flávio Matos Luana Rebouças Venceslau Neto