A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

7P/SI – 2010/01 Prof. Carlos Alberto Seixas. Agenda Visão Geral sobre os Conceitos e Implementação sobre SGBs MySQL Revisão das Práticas Práticas 1 e.

Apresentações semelhantes


Apresentação em tema: "7P/SI – 2010/01 Prof. Carlos Alberto Seixas. Agenda Visão Geral sobre os Conceitos e Implementação sobre SGBs MySQL Revisão das Práticas Práticas 1 e."— Transcrição da apresentação:

1 7P/SI – 2010/01 Prof. Carlos Alberto Seixas

2 Agenda Visão Geral sobre os Conceitos e Implementação sobre SGBs MySQL Revisão das Práticas Práticas 1 e 2 (aula 3). Prática 3 – Permissões no MySQL Prática 4 – Definição de chaves Novas Práticas: Prática 5 Prática 6 Pontos de discussão: Bancos de Dados Trabalho em grupo para preparação do seminário

3 Conceitos e Implementação sobre MySQL Views Uma view(visão) é uma tabela virtual na qual os dados não estão fisicamente armazenados. Ela é apenas uma visão de um grupo de colunas de uma ou mais tabelas do banco de dados. No exemplo abaixo, criaremos uma view que terá apenas as colunas COD_PRODUTO, DSC_PRODUTO. CREATE VIEW loja.VIEW_PRODUTOS AS SELECT cod_produto, dsc_produto FROM produtos;

4 View Resultado: CREATE VIEW loja.VIEW_PRODUTOS AS SELECT cod_produto, dsc_produto FROM produtos;

5 Stored Procedures Conjunto de comandos SQL armazendos no servidor que realizam tarefas específicas e são ativadas como comandos. Podem receber parâmetros de entrada, saída ou entrada e saída.

6 Stored Procedures Exemplo: DELIMITER $$ DROP PROCEDURE IF EXISTS escola.pr_total $$ CREATE PROCEDURE escola.pr_total ( OUT total INT) BEGIN SELECT count(0) INTO total FROM produtos; END $$

7 Stored Procedures Executando a procedure via linha de comando C:\ mysql -u root -p (após teclar ENTER informe a senha do usuário root) mysql> use loja (Informamos o database que iremos utilizar) mysql> call pr_total(@teste); (Chamamos a procedure pr_total e armazenamos o resultado em teste.) mysql> select @teste; ( Exibimos o resultado. No exemplo acima, trazemos a quantidade de produtos cadastrados.)

8 Triggers É um bloco PL/SQL armazendo em um banco de dados e executado sempre que o evento ocorrer. Esse evento pode ser um DML (update, insert, delete), um DDL (create, alter, drop, truncate table) ou mesmo um evento ocorrido do banco, como uma conexão, por exemplo.

9 Triggers Exemplo: Criaremos a tabela HISTÓRICO que armazenará todas as alterações de valores efetuadas na tabela de PRODUTOS. CREATE TABLE loja.historico ( COD_HIST INTEGER NOT NULL AUTO_INCREMENT, COD_PRODUTO INTEGER NOT NULL, DT_ALTERACAO DATE NOT NULL, VLR_ANTIGO DOUBLE(4,2) NOT NULL, VLR_NOVO DOUBLE(4,2) NOT NULL, FOREIGN KEY(COD_PRODUTO) REFERENCES produtos(COD_PRODUTO), PRIMARY KEY(COD_HIST) ) ENGINE = INNODB;

10 Triggers A trigger TR_PRODUP que será acionada quando ocorrer um UPDATE na tabela de PRODUTOS. DELIMITER $$ DROP TRIGGER loja.tr_produp $$ CREATE TRIGGER tr_produp BEFORE UPDATE ON produtos FOR EACH ROW BEGIN DECLARE TESTE VARCHAR(30); DECLARE DATA DATE; SET DATA = NOW(); INSERT INTO HISTORICO SET COD_PRODUTO = OLD.cod_produto, VLR_ANTIGO = OLD.vlr_produto, VLR_NOVO = NEW.vlr_produto, DT_ALTERACAO = DATA; END $$

11 Triggers Após alterarmos algum dado na tabela produtos é disparado a trigger tr_produp que fará automaticamente uma inserção na tabela de histórico. Para testarmos, pode-se alterar o valor de um produto de R$ 22,00 para R$ 25,00. UPDATE produtos SET vlr_produto = 25.00 WHERE cod_produto = 1;

12 Triggers Após a atualização, se dermos um SELECT na tabela HISTÓRICO teremos como resultado: SELECT * FROM historico;

13 Exercício Prática 1 – Manipulação de objetos no MySQL, via SQLYog,Verificação do serviço MySQL, conexão com MySQL através do MySQL Yog, criação Banco de Dados: Escola, criação tabela alunos, verificação do tipo de tabela criada

14 Pontos de discussão - Seminário Definição dos pontos propostos na aula passada; Apresentação de textos da pesquisa realizada; Construção de argumentação para os novos pontos apresentados;

15 Bibliografia Guia de referencia MySql 5.0, disponível em Mysql.com Julio César Martini,Imasters.com, Mysql 5.


Carregar ppt "7P/SI – 2010/01 Prof. Carlos Alberto Seixas. Agenda Visão Geral sobre os Conceitos e Implementação sobre SGBs MySQL Revisão das Práticas Práticas 1 e."

Apresentações semelhantes


Anúncios Google