Monitoria GDI Aula Prática. DML + PL/SQL parte 1
|
|
|
- Sophia Gesser Figueiredo
- 10 Há anos
- Visualizações:
Transcrição
1 Monitoria GDI Aula Prática DML + PL/SQL parte 1
2 DML linguagem de manipulação de dados
3 SQL Estrutura básica de uma consulta SQL SELECT Coluna1[,Coluna2[,Coluna3[,...]]] FROM Tabela1[,Tabela2[,...]] WHERE Condição
4 SQL Estrutura genérica de uma consulta SQL SELECT [DISTINCT ALL] {* [Tabela.]Coluna1 [AS Alias1] [[Tabela.]Coluna2 [AS Alias2] [,...]]} FROM Tabela1[,Tabela2[,...]] [WHERE {Condição Simples Condição de Sub-consulta}] [ORDER BY Coluna1 [ASC DESC] [,Coluna2 [ASC DESC] [,... ]]] [GROUP BY Coluna1 [,Coluna2[,...]] [HAVING Condição]] [{UNION INTERSECT EXCEPT} SELECT...]
5 Exercício 1 Selecione a matrícula e o nome de todas as mulheres, ordenando-as por ordem alfabética.
6 Exercício 1 Selecione a matrícula e o nome de todas as mulheres, ordenando-as por ordem alfabética. SELECT nome, matricula_pessoa FROM Pessoa WHERE Sexo = 'M' ORDER BY nome;
7 Exercício 2 Repita a operação anterior exibindo apenas aquelas que são professoras.
8 Exercício 2 Repita a operação anterior exibindo apenas aquelas que são professoras. SELECT nome, matricula_pessoa FROM pessoa, professor WHERE matricula_pessoa = matricula_professor AND Sexo = 'M' ORDER BY nome;
9 Exercício 3 Quais são as disciplinas que o professor 'Sirenio Arruda' está ministrando atualmente?
10 Exercício 3 Quais são as disciplinas que o professor 'Sirenio Arruda' está ministrando atualmente? SELECT M.codigo_disciplina FROM Ministra M, Pessoa P, Professor PR WHERE M.matricula_professor = PR.matricula_professor AND PR.matricula_professor = P.matricula_pessoa AND P.nome = 'Sirenio Arruda' AND M.ano_semestre = '2010.2';
11 Exercício 4 Repita a consulta anterior utilizando JOIN.
12 Exercício 4 Repita a consulta anterior utilizando JOIN. SELECT M.codigo_disciplina FROM Ministra M INNER JOIN Professor PR ON M.matricula_professor = PR.matricula_professor INNER JOIN Pessoa P ON PR.matricula_professor = P.matricula_pessoa WHERE P.nome = 'Sirenio Arruda' AND M.ano_semestre = '2010.2';
13 Exercício 5 Para as disciplinas de código 1, 2 e 3, mostre quais alunos já foram seus monitores. (Use IN)
14 Exercício 5 Para as disciplinas de código 1, 2 e 3, mostre quais alunos já foram seus monitores. (Use IN) SELECT DISTINCT P.nome FROM Pessoa P INNER JOIN Aluno A ON P.matricula_pessoa = A.matricula_aluno INNER JOIN Monitoria M ON M.matricula_aluno = A.matricula_aluno WHERE M.codigo_disciplina IN (1,2,3);
15 Exercício 6 Mostre os nomes de TODOS os professores e, caso existam, os nomes dos seus líderes.
16 Exercício 6 Mostre os nomes de TODOS os professores e, caso existam, os nomes dos seus líderes. SELECT P1.nome, P2.nome as lider FROM Pessoa P1 INNER JOIN Professor PR ON P1.matricula_pessoa = PR.matricula_professor LEFT OUTER JOIN Pessoa P2 ON PR.matricula_lider = P2.matricula_pessoa;
17 Exercício 7 Mostre os alunos que não têm nenhum projeto. Exiba também as informações de quando eles pagaram a cadeira. (Use IS NULL)
18 Exercício 7 Mostre os alunos que não têm nenhum projeto. Exiba também as informações de quando eles pagaram a cadeira. (Use IS NULL) SELECT a.matricula_aluno, at.codigo_curso, at.codigo_disciplina, at.ano_semestre FROM aluno a, aluno_turma at WHERE a.matricula_aluno = at.matricula_aluno AND at.codigo_projeto IS NULL ORDER BY a.matricula_aluno, at.ano_semestre;
19 Exercício 8 Selecione todos os professores, exceto aqueles que entraram entre 1995 e (Use BETWEEN)
20 Exercício 8 Selecione todos os professores, exceto aqueles que entraram entre 1995 e (Use BETWEEN) SELECT * FROM professor WHERE data_admissao NOT BETWEEN to_date('1999', 'yyyy') AND to_date('2005', 'yyyy');
21 Exercício 9 Mostre quantas vezes que o professor 'Jose Alcantara' já esteve a lecionar
22 Exercício 9 Mostre quantas vezes que o professor 'Jose Alcantara' já esteve a lecionar SELECT COUNT(M.codigo_disciplina) FROM Pessoa P INNER JOIN Professor PR ON P.matricula_pessoa = PR.matricula_professor INNER JOIN Ministra M ON M.matricula_professor = PR.matricula_professor WHERE P.nome = 'Jose Alcantara';
23 Exercício 10 Mostre a média das notas dos alunos agrupadas por período.
24 Exercício 10 Mostre a média das notas dos alunos agrupadas por período. SELECT ano_semestre, AVG(nota) FROM Prova GROUP BY ano_semestre;
25 Exercício 11 Considere um relatório e mostre, numa mesma consulta, para o semeste '2009.1', os registros dos professores em todas as ministrações que realizaram mais os registros dos alunos nas vezes em que pagaram alguma cadeira. Exiba o código da disciplina, o código do curso e a matrícula do professor ou do aluno que realizou a atividade. (Realize SELECTS independentes e use UNION)
26 Exercício 11 Considere um relatório e mostre, numa mesma consulta, para o semeste '2009.1', os registros dos professores em todas as ministrações que realizaram mais os registros dos alunos nas vezes em que pagaram alguma cadeira. Exiba o código da disciplina, o código do curso e a matrícula do professor ou do aluno que realizou a atividade. (Realize SELECTS independentes e use UNION) (SELECT matricula_professor AS matricula, codigo_disciplina, codigo_curso FROM ministra WHERE ano_semestre = '2009.1') UNION (SELECT matricula_aluno AS matricula, codigo_disciplina, codigo_curso FROM aluno_turma WHERE ano_semestre = '2009.1');
27 PL/SQL Procedural Language/ Structured Query Language
28 PROCEDURE Por padrão não retornam valor (exceção: modo OUT ou IN OUT). Estrutura básica de um PROCEDURE PROCEDURE nome IS BEGIN [EXCEPTION] END;
29 FUNCTION Por padrão, necessariamente, retornam um único valor. Estrutura básica de uma FUNCTION FUNCTION nome RETURN tipo IS BEGIN RETURN valor [EXCEPTION] END;
30 Exercício 12 Admita que cada uma das cadeiras que um aluno paga vale 5 créditos, que cada projeto vale 1 e que cada monitoria vale 2 créditos. Implemente uma função que, dado um número de matrícula, retorna os créditos totais da carreira estudantil do aluno.
31 Exercício 12 Admita que cada uma das cadeiras que um aluno paga vale 5 créditos, que cada projeto vale 1 e que cada monitoria vale 2 créditos. Implemente uma função que, dado um número de matrícula, retorna os créditos totais da carreira estudantil do aluno. CREATE OR REPLACE FUNCTION qtd_creditos (mat aluno.matricula_aluno%type) RETURN NUMBER IS retorno NUMBER;
32 BEGIN SELECT COUNT(a_t.matricula_aluno)*5 + COUNT(a_t.codigo_projeto)*1 + COUNT(m.matricula_aluno)*2 INTO retorno FROM aluno_turma a_t, monitoria m, aluno a WHERE a.matricula_aluno = a_t.matricula_aluno AND m.matricula_aluno = a.matricula_aluno AND a.matricula_aluno = mat; RETURN retorno; END; / --TESTANDO SELECT qtd_creditos(9999) FROM DUAL;
33 Exercício 13 Implemente um procedimento que recebe como parâmetro de entrada um título de um projeto e imprime os seus dados.
34 Exercício 13 Implemente um procedimento que recebe como parâmetro de entrada um título de um projeto e imprime os seus dados. CREATE OR REPLACE PROCEDURE pesquisa_projeto (par_titulo IN projeto.titulo%type) IS v_codigo_projeto projeto.codigo_projeto%type; v_titulo projeto.titulo%type; v_conceito projeto.conceito%type; v_hp projeto.hp%type;
35 BEGIN SELECT codigo_projeto, titulo, conceito, hp INTO v_codigo_projeto,v_titulo,v_conceito,v_hp FROM projeto WHERE titulo LIKE par_titulo; dbms_output.put_line( 'COD: ' v_codigo_projeto ' - TIT: ' v_titulo ' - CON: ' v_conceito ' - HP: ' v_hp); END; / --TESTANDO EXECUTE pesquisa_projeto('rede Aberta');
36 Exercício 14 Implemente um novo procedimento, semelhante ao anterior, que seja mais genérico e pesquise todos os projetos que possuam o valor do parâmetro como substring do seu título. (Utilize LIKE '%' e CURSOR)
37 Exercício 14 Implemente um novo procedimento, semelhante ao anterior, que seja mais genérico e pesquise todos os projetos que possuam o valor do parâmetro como substring do seu título. (Utilize LIKE '%' e CURSOR) CREATE OR REPLACE PROCEDURE pesquisa_projeto_generico (par_titulo IN projeto.titulo%type) IS CURSOR cursor_projetos IS SELECT * FROM projeto WHERE LOWER(titulo) LIKE LOWER('%' par_titulo '%'); registro_projeto projeto%rowtype;
38 BEGIN OPEN cursor_projetos; LOOP FETCH cursor_projetos INTO registro_projeto; EXIT WHEN cursor_projetos%notfound; dbms_output.put_line( 'COD: ' registro_projeto.codigo_projeto ' - TIT: ' registro_projeto.titulo ' - CON: ' registro_projeto.conceito ' - HP: ' registro_projeto.hp); END LOOP; CLOSE cursor_projetos; END; / --TESTANDO EXECUTE pesquisa_projeto_generico('cin');
39 Exercício 15 Crie um PROCEDURE que recebe um VARCHAR do tipo ano_semestre e produz dois parâmetros numéricos de saída: ano e semestre;
40 Exercício 15 Crie um PROCEDURE que recebe um VARCHAR do tipo ano_semestre e produz dois parâmetros numéricos de saída: ano e semestre; CREATE OR REPLACE PROCEDURE desmembra_semestre (ano_semestre IN turma.ano_semestre%type, ano OUT NUMBER, semestre OUT NUMBER) IS BEGIN ano := SUBSTR(ano_semestre,1,4); semestre := SUBSTR(ano_semestre,6,1); END; /
41 Exercício 16 Implemente uma FUNCTION que receberá o código de uma disciplina e retornará uma STRING com todos os ANOS em que ela foi ofertada no 1º semestre e todos os anos para o 2º semestre (EX: '1º: 1992; 1990; 2000; 2º: 1990; 2001;'). Crie uma tabela (IS TABLE OF) com registros do tipo (IS RECORD [cod_curso, ano, semestre]) que receberá as informações de todas as turmas que já existiram e utilize o PROCEDURE anterior para separar os campos ano_semestre. Em seguida, verifique um a um os registros da tabela já povoada e vá preenchendo a variável de retorno.
42 CREATE OR REPLACE FUNCTION anos_por_semestre (cod disciplina.codigo_disciplina%type) RETURN VARCHAR2 IS TYPE TIPO_TURMA_COMPACTO IS RECORD (cod_curso turma.codigo_curso%type, ano NUMBER, semestre NUMBER); TYPE TIPO_TURMA_COMPACTO_TABELA IS TABLE OF TIPO_TURMA_COMPACTO; tab_compacto TIPO_TURMA_COMPACTO_TABELA := TIPO_TURMA_COMPACTO_TABELA(); anos1 VARCHAR2(100) := '1º: '; anos2 VARCHAR2(100) := '2º: ';
43 BEGIN FOR registro_turma IN (SELECT * FROM turma WHERE codigo_disciplina = cod ORDER BY codigo_curso) LOOP tab_compacto.extend; tab_compacto(tab_compacto.last).cod_curso := registro_turma.codigo_curso; desmembra_semestre(registro_turma.ano_semestre, tab_compacto(tab_compacto.last).ano, tab_compacto(tab_compacto.last).semestre); END LOOP;
44 WHILE tab_compacto.count > 0 LOOP IF(tab_compacto(tab_compacto.LAST).semestre = 1) THEN anos1 := anos1 tab_compacto(tab_compacto.last).ano '-' tab_compacto(tab_compacto.last).cod_curso '; '; ELSIF(tab_compacto(tab_compacto.LAST).semestre = 2) THEN anos2 := anos2 tab_compacto(tab_compacto.last).ano '-' tab_compacto(tab_compacto.last).cod_curso '; '; END IF; tab_compacto.trim(); END LOOP; END; / RETURN anos1 ' ' anos2; --TESTANDO SELECT anos_por_semestre(1) FROM DUAL;
45 TRIGGER Executado implicitamente pelo SGBD na ocorrência de um determinado evento ou combinação deste. Estrutura básica de um TRIGGER CREATE [OR REPLACE] TRIGGER nome_trigger momento evento1 [OR evento2 OR evento3] [OF coluna] ON nome_objeto [[REFERENCING OLD AS apelido1 NEW AS apelido2] FOR EACH ROW [WHEN (condição)]] corpo_trigger
46 Exercício 17 Criar um TRIGGER que faça um comparativo entre os ANTIGOS e NOVOS valores logo após inserção, atualização ou deleção de um projeto.
47 Exercício 17 Criar um TRIGGER que faça um comparativo entre os ANTIGOS e NOVOS valores logo após inserção, atualização ou deleção de um projeto. CREATE OR REPLACE TRIGGER controle_projetos AFTER INSERT OR UPDATE OR DELETE ON PROJETO FOR EACH ROW BEGIN dbms_output.put_line('<<dados ANTIGOS>>'); dbms_output.put_line('cod: ' :OLD.codigo_projeto); dbms_output.put_line('tit: ' :OLD.titulo); dbms_output.put_line('con: ' :OLD.conceito); dbms_output.put_line('hp: ' :OLD.hp); dbms_output.put_line(' ');
48 dbms_output.put_line('<<dados NOVOS>>'); dbms_output.put_line('cod: ' :NEW.codigo_projeto); dbms_output.put_line('tit: ' :NEW.titulo); dbms_output.put_line('con: ' :NEW.conceito); dbms_output.put_line('hp: ' :NEW.hp); END; / --TESTANDO INSERT INTO projeto(codigo_projeto,titulo, conceito,hp) VALUES (21,'BiosFera','RUIM', ' UPDATE projeto SET titulo = 'Bioma Protection', hp = ' conceito = 'BOM' WHERE codigo_projeto = 21; DELETE projeto WHERE codigo_projeto = 21;
49 Exercício 18 Implemente um TRIGGER que não permita que um professor coordene mais do que uma disciplina. Caso alguma irregularidade ocorra, imprima uma mensagem do tipo "RAISE APPLICATION ERROR".
50 Exercício 18 Implemente um TRIGGER que não permita que um professor coordene mais do que uma disciplina. Caso alguma irregularidade ocorra, imprima uma mensagem do tipo "RAISE APPLICATION ERROR". CREATE OR REPLACE TRIGGER controle_coordenacao BEFORE INSERT ON disciplina FOR EACH ROW DECLARE coordenador disciplina.matricula_professor%type;
51 BEGIN SELECT matricula_professor INTO coordenador FROM disciplina WHERE matricula_professor = :NEW.matricula_professor; IF coordenador IS NOT NULL THEN RAISE_APPLICATION_ERROR(-20101,'ESTE PROFESSOR JA COORDENA UMA DISCIPLINA'); END IF; EXCEPTION WHEN NO_DATA_FOUND THEN dbms_output.put_line('coordenacao ACEITA'); END; / --TESTANDO INSERT INTO disciplina (codigo_disciplina, ementa, conteudo_programatico, matricula_professor)values (7,'E7', 'C7',1111);
52 Monitoria GDI Aula Prática DML + PL/SQL parte 1
Bancos de Dados I. Integridade semântica
Bancos de Dados I PUC-Rio Departamento de Informática (DI) Eng./Ciência da Computação e Sist. Informação Contrôle de Integridade em SGBDs: procedimentos armazenados, gatilhos e funções Prof. [email protected]
Comandos de Manipulação
SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL
FAPLAN - Faculdade Anhanguera Passo Fundo Gestão da Tecnologia da Informação Banco de Dados II Prof. Eder Pazinatto Stored Procedures Procedimento armazenados dentro do banco de dados Um Stored Procedure
PL/SQL. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Laboratório de Bases de Dados PL/SQL
PL/SQL Laboratório de Bases de Dados PL/SQL Program Language SQL linguagem de programação da Oracle que permite processar dados armazenados no banco de dados Exemplos de operações permitidas alterar, remover,
Laboratório de Banco de Dados Prof. Luiz Vivacqua. PL/pgSQL A Linguagem de programação do PostgreSQL
Laboratório de Banco de Dados Prof. Luiz Vivacqua PL/pgSQL A Linguagem de programação do PostgreSQL 1) Visão Geral A PL/pgSQL é uma linguagem de programação procedural para o Sistema Gerenciador de Banco
RECUPERAÇÃO DE CONTEÚDO BANCO DE DADOS
RECUPERAÇÃO DE CONTEÚDO BANCO DE DADOS No Instituto Federal do Paraná tounou-se necessário o armazenamento de certas informações para controle de pessoal. Para armazenar tais dados é necessário saber que:
Triggers e Regras. Fernando Lobo. Base de Dados, Universidade do Algarve
Triggers e Regras Fernando Lobo Base de Dados, Universidade do Algarve 1 / 14 Triggers Um trigger permite que uma determinada sequência de comandos SQL seja accionada quando um determinado evento ocorre.
SQL Procedural. Josino Rodrigues Neto [email protected]
SQL Procedural Josino Rodrigues Neto [email protected] SQL Procedural Agregada em SQL-92 As ferramentas têm nomes para suas linguagens SQL procedurais/embutidas Oracle : PL/SQL Postgres PL/Pgsql SQL Server
Logado no OracleXE vamos acessar a opção:
Tutorial PL/SQL O PL/SQL é uma linguagem procedural que roda diretamente no núcleo do SGBD Oracle. O objetivo deste tutorial é mostrar a criação de funções e procedimentos em PL/SQL, interagindo com comandos
PROGRAMAÇÃO EM BANCO DADOS Stored Procedure e Trigger
PROGRAMAÇÃO EM BANCO DADOS Stored Procedure e Trigger A tecnologia de banco de dados permite persistir dados de forma a compartilha-los com varias aplicações. Aplicação 1 aplicação 2 aplicação 3 SGDB Banco
Oracle 10g: SQL e PL/SQL
Oracle 10g: SQL e PL/SQL PL/SQL: Visão Geral Enzo Seraphim Visão Geral Vantagens de PL/SQL Suporte total à linguagem SQL Total integração com o Oracle Performance Redução da comunicação entre a aplicação
SQL Linguagem de Manipulação de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
SQL Linguagem de Manipulação de Dados Banco de Dados SQL DML SELECT... FROM... WHERE... lista atributos de uma ou mais tabelas de acordo com alguma condição INSERT INTO... insere dados em uma tabela DELETE
Triggers. um trigger permite que uma determinada sequência de comandos SQL seja accionada quando um determinado evento ocorre.
Triggers um trigger permite que uma determinada sequência de comandos SQL seja accionada quando um determinado evento ocorre. o evento pode ser INSERT, UPDATE, ou DELETE. o trigger pode ser accionado imediatamente
Introdução às funções e procedimentos. SQL suporta funções e procedimentos úteis com tipos de dados específicos
Bases de Dados Stored procedures e triggers Introdução às funções e procedimentos SQL suporta funções e procedimentos úteis com tipos de dados específicos p.ex. objectos geométricos, imagens intersecção
Triggers em PostgreSQL. Linguagem de Programação de Banco de Dados. Triggers em PostgreSQL. Triggers em PostgreSQL
Prof. Ms. Luiz Alberto Contato: [email protected] Linguagem de Programação de Banco de Dados Triggers em PostgreSQL Todos os bancos de dados comerciais possuem uma linguagem procedural auxiliar para a
PL/pgSQL por Diversão e Lucro
PL/pgSQL por Diversão e Lucro Roberto Mello 3a. Conferência Brasileira de PostgreSQL - PGCon-BR Campinas - 2009 1 Objetivos Apresentar as partes principais do PL/pgSQL Apresentar casos de uso comum do
Oracle PL/SQL Overview
Faculdades Network Oracle PL/SQL Overview Prof. Edinelson PL/SQL Linguagem de Programação Procedural Language / Structured Query Language Une o estilo modular de linguagens de programação à versatilidade
BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com
- Aula 11-1. INTRODUÇÃO TRIGGERS (GATILHOS OU AUTOMATISMOS) Desenvolver uma aplicação para gerenciar os dados significa criar uma aplicação que faça o controle sobre todo ambiente desde a interface, passando
Banco de Dados. Marcio de Carvalho Victorino www.dominandoti.eng.br. Exercícios SQL
Banco de Dados Exercícios SQL 1 TRF (ESAF 2006) 32. Analise as seguintes afirmações relacionadas a Bancos de Dados e à linguagem SQL: I. A cláusula GROUP BY do comando SELECT é utilizada para dividir colunas
2. Criar um bloco PL/SQL anônimo para imprimir as tabuadas abaixo: 5 X 10 = 50 5 X 2 = 10... 10 X 10 = 100 1 X 2 = 2...
1. Criar um bloco PLSQL anônimo para imprimir a tabuada abaixo: 5 X 1 = 5 5 X 2 = 10... 5 X 10 = 50 V_N CONSTANT NUMBER(2) := 5; FOR I IN 1..10 LOOP DBMS_OUTPUT.PUT_LINE(V_N ' X ' I ' = ' V_N*I); 2. Criar
Linguagem PL/SQL e Triggers
TECNOLOGIA DE BASES DE DADOS Linguagem PL/SQL e Triggers António Manuel Silva Ferreira UNIVERSIDADE DE LISBOA FACULDADE DE CIÊNCIAS DEPARTAMENTO DE INFORMÁTICA [email protected] Sumário Linguagem PL/SQL
Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )
PRONATEC - Programador de Sistemas Banco de Dados 1) Incluindo linhas nas tabelas a. Para incluir linhas em tabelas utilize o comando INSERT INTO INSERT INTO tabela [ ( coluna [, coluna,...] ) ] VALUES
Sistemas de Informação
Sistemas de Informação Rules and Triggers André Restivo Sistemas de Informação 2006/07 Rules e Triggers Nem todas as restrições podem ser definidas usando os mecanismos que estudamos anteriormente: - CHECK
BANCO DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc. [email protected]
BANCO DE DADOS -INTRODUÇÃO AO SQL Prof. Angelo Augusto Frozza, M.Sc. [email protected] Os comandos SQL podem ser agrupados em 3 classes: DDL Data Definition Language Comandos para a Definição
Triggers e mais... Instituto Militar de Engenharia IME 1o. Semestre/2005 Triggers Propósito mais amplo que restrições Restrições onde se explicita o evento Regras event-condition-action (ECA) Eventos:
SQL Gatilhos (Triggers)
SQL Gatilhos (Triggers) Laboratório de Bases de Dados Gatilho (trigger) Bloco PL/SQL que é disparado de forma automática e implícita sempre que ocorrer um evento associado a uma tabela INSERT UPDATE DELETE
Banco de Dados II. Triggers e Functions. Prof. Moser Fagundes. Curso TSI Instituto Federal Sul-Rio-Grandense (IFSul) Campus Charqueadas
Banco de Dados II Triggers e Functions Prof. Moser Fagundes Curso TSI Instituto Federal Sul-Rio-Grandense (IFSul) Campus Charqueadas Sumário da aula Functions (funções) Triggers (gatilhos) Atividades Functions
Introdução à Banco de Dados. Nathalia Sautchuk Patrício
Introdução à Banco de Dados Nathalia Sautchuk Patrício Histórico Início da computação: dados guardados em arquivos de texto Problemas nesse modelo: redundância não-controlada de dados aplicações devem
PROGRAMAÇÃO EM BANCO DADOS Store Procedure e Trigger
PROGRAMAÇÃO EM BANCO DADOS Store Procedure e Trigger a tecnologia de banco de dados permite persistir dados de forma a compartilha-los com varias aplicações. Aplicação 1 aplicação 2 aplicação 3 SGDB Banco
FUNCTION ) RETURNS INTEGER AS $$ DECLARE
PERFORM O comando PERFORM permite a execução de um comando SELECT desprezando o resultado do comando. PERFORM query; A variável especial FOUND é definida como verdadeiro se a instrução produzir pelo menos
Banco de Dados I Linguagem SQL Parte 2. Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello
Banco de Dados I Linguagem SQL Parte 2 Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello Introdução Como vimos, um SGBD possui duas linguagens: DDL: Linguagem de Definição de Dados. Usada
Bases de Dados 2007/2008. Aula 9
Bases de Dados 2007/2008 Aula 9 1. T-SQL TRY CATCH 2. TRATAMENTO ERROS RAISERROR 3. TRIGGERS 4. EXERCÍCIOS Sumário Referências http://msdn2.microsoft.com/en-us/library/ms189826.aspx (linguagem t-sql) http://www.di.ubi.pt/~pprata/bd/bd0405-proc.sql
SQL DML. Frederico D. Bortoloti [email protected]
Banco de Dados I SQL DML Frederico D. Bortoloti [email protected] SQL - DML Os exemplos da aula serão elaborados para o esquema de dados a seguir: Empregado(matricula, nome, endereco, salario, supervisor,
Structured Query Language (SQL)
SQL Histórico Structured Query Language (SQL) Foi desenvolvido pela IBM em meados dos anos 70 como uma linguagem de manipulação de dados (DML - Data Manipulation Language) para suas primeiras tentativas
Relatório. Projecto de Base de Dados Parte 2. Turno: quinta-feira, 11:30 Grupo 25: André Gonçalves 64027 Rui Barradas 68239 Hélton Miranda 68477
Relatório Projecto de Base de Dados Parte 2 Turno: quinta-feira, 11:30 Grupo 25: André Gonçalves 64027 Rui Barradas 68239 Hélton Miranda 68477 1. Criação da base de dados De seguida vem escrito um script
SQL TGD/JMB 1. Projecto de Bases de Dados. Linguagem SQL
SQL TGD/JMB 1 Projecto de Bases de Dados Linguagem SQL SQL TGD/JMB 2 O que é o SQL? SQL ("ess-que-el") significa Structured Query Language. É uma linguagem standard (universal) para comunicação com sistemas
Bases de Dados 2005/2006. Aula 5
Bases de Dados 2005/2006 Aula 5 Sumário -1. (T.P.C.) Indique diferenças entre uma tabela e uma relação. 0. A base de dados Projecto 1. SQL Join (variantes) a. Cross Join b. Equi-Join c. Natural Join d.
FERRAMENTA DE APOIO A REESTRUTURAÇÃO DE CÓDIGO FONTE EM LINGUAGEM PL/SQL BASEADO EM PADRÕES DE LEGIBILIDADE
FERRAMENTA DE APOIO A REESTRUTURAÇÃO DE CÓDIGO FONTE EM LINGUAGEM PL/SQL BASEADO EM PADRÕES DE LEGIBILIDADE Formando: Dyckson Dyorgio Dolla Orientador: Prof. Everaldo Artur Grahl Julho / 2001 ROTEIRO DA
Introdução à linguagem SQL
Introdução à linguagem SQL 1 Histórico A linguagem de consulta estruturada (SQL - Structured Query Language) foi desenvolvida pela empresa IBM, no final dos anos 70. O primeiro banco de dados comercial
IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1
IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1 Banco de Dados Fundamentos de SQL Structured Query Language Aula2 Apresentado por: Robson do Nascimento Fidalgo [email protected] IF685
3) Palavra-chave distinct (select-from). Obter apenas os pibs distintos entre si.
NOME: BRUNO BRUNELI BANCO DE DADOS - ADS create database ProducaoMinerais use ProducaoMinerais create table Mineral( nome varchar(15) primary key, preco real) create table Pais( nome varchar(30) primary
Triggers no PostgreSQL
Triggers no PostgreSQL Traduzido do manual do PostgreSQL Pode-se utilizar PL/pqSQL para a definição de triggers (gatilhos). Um procedimento do tipo trigger é criado com o comando CREATE FUNCTION, declarando
Linguagem de Consulta Estruturada SQL- DML
Linguagem de Consulta Estruturada SQL- DML INTRODUÇÃO A SQL - Structured Query Language, foi desenvolvido pela IBM em meados dos anos 70 como uma linguagem de manipulação de dados (DML - Data Manipulation
Pontifícia Universidade Católica do Rio Grande do Sul FACULDADE DE INFORMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO.
Pontifícia Universidade Católica do Rio Grande do Sul FACULDADE DE INFORMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO Curso Oracle 10g Prof. MSc. Luciano Blomberg [email protected] 2011/1
ANÁLISE E PROJETO DE BANCO DE DADOS
ANÁLISE E PROJETO DE BANCO DE DADOS SQL FELIPE G. TORRES SQL A linguagem SQL (Struct Query Language) é utilizada como padrão em bancos de dados relacionais. Seu desenvolvimento foi originalmente no início
AULA 2 INTERAÇÃO COM O BANCO DE DADOS
AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,
Formação em Banco de Dados
Formação em Banco de Dados Sobre a KTEC A KTEC Escola de Tecnologia oferece uma série de cursos, para os que procuram uma base sólida no aprendizado, com foco nas boas práticas que fazem a diferença no
BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho [email protected] www.diemesleno.com.br
BANCO DE DADOS info 3º ano Prof. Diemesleno Souza Carvalho [email protected] www.diemesleno.com.br Na última aula estudamos Unidade 4 - Projeto Lógico Normalização; Dicionário de Dados. Arquitetura
Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3
ÍNDICE o -INTRODUÇÃO Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3 0.5 Sistemas Utilizados 6 0.5.1 Access 2003 (Microsoft)
Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet
Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível
AULA 2 INTERAÇÃO COM O BANCO DE DADOS
AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,
Prova de Fundamentos de Bancos de Dados 2 a Prova
Prova de Fundamentos de Bancos de Dados 2 a Prova Prof. Carlos A. Heuser Novembro de 2006 Prova com consulta duas horas de duração 1 Base de dados para as questões (Esta é a mesma base de dados que foi
PHP INTEGRAÇÃO COM MYSQL PARTE 1
INTRODUÇÃO PHP INTEGRAÇÃO COM MYSQL PARTE 1 Leonardo Pereira [email protected] Facebook: leongamerti http://www.estudandoti.com.br Informações que precisam ser manipuladas com mais segurança
UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II
UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II BANCO DE DADOS II AULA 3 Linguagem SQL Linguagem de manipulação de dados (DML) DISCIPLINA: Banco de
SQL. Prof. Márcio Bueno. {bd2tarde,bd2noite}@marciobueno.com
SQL Prof. Márcio Bueno {bd2tarde,bd2noite}@marciobueno.com Material dos professores Ana Carolina Salgado, Fernando Foncesa e Valéria Times (CIn/UFPE) SQL SQL - Structured Query Language Linguagem de Consulta
Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )
Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: B1SGB - Sistemas Gerenciadores de Banco de Dados Memória de aula Aula 10 1) Incluindo linhas nas tabelas a. Para incluir linhas em tabelas
Treinamento sobre SQL
Treinamento sobre SQL Como Usar o SQL Os dois programas que você mais utilizara no SQL Server são: Enterprise Manager e Query Analyzer. No Enterprise Manager, você pode visualizar e fazer alterações na
AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS
AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS Na grande maioria dos sistemas, faz-se necessário utilizar informações que estão armazenadas em uma determinada
Bases de Dados 2007/2008. Aula 8
Bases de Dados 2007/2008 Aula 8 1. T-SQL 2. VARIÁVEIS 3. CURSORES 4. PROCEDIMENTOS 5. EXERCÍCIOS Sumário Referências http://msdn2.microsoft.com/en-us/library/ms189826.aspx (linguagem t-sql) http://www.di.ubi.pt/~pprata/bd/bd0405-proc.sql
SQL (Structured Query Language)
(Structured Query Language) I DDL (Definição de Esquemas Relacionais)... 2 I.2 Domínios... 2 I.3 Criação de Tabelas... 2 I.4 Triggers... 4 II DML Linguagem para manipulação de dados... 5 II.2 Comando SELECT...
Banco de Dados. Maurício Edgar Stivanello
Banco de Dados Maurício Edgar Stivanello Agenda Conceitos Básicos SGBD Projeto de Banco de Dados SQL Ferramentas Exemplo Dado e Informação Dado Fato do mundo real que está registrado e possui um significado
Bases de Dados 2012/2013 Funções/procedimentos e triggers. Helena Galhardas 2012 IST. Bibliografia. Manual referência PostgreSQL
Bases de Dados 2012/2013 Funções/procedimentos e triggers em PostgreSQL Helena Galhardas Bibliografia Manual referência PostgreSQL http://www.postgresql.org/docs/9.2/static/ plpgsql.html http://www.postgresql.org/docs/9.2/static/
PL/pgSQL. Introdução. Introdução. Introdução
Introdução PL/pgSQL Banco de Dados II Prof. Guilherme Tavares de Assis PL/pgSQL (Procedural Language for the PostgreSQL) é uma linguagem procedural carregável desenvolvida para o SGBD PostgreSQL, que possui
Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL
Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível de independência do
Projeto de Banco de Dados
Projeto de Banco de Dados SQL-Consultas Comando SELECT Prof. Luiz Antônio Vivacqua C. Meyer ([email protected]) Sintaxe Geral SELECT [ALL/DISTINCT] coluna1, coluna2,..., colunan FROM nome_tabela1,
Banco de Dados Avançados Banco de Dados Ativo
Universidade Federal de Pernambuco Centro de Informática Banco de Dados Avançados Banco de Dados Ativo Equipe: Felipe Cavalcante Fernando Kakimoto Marcos Corrêa Sumário 1. Mini-Mundo... 3 1.1 Entidades...
SQL comando SELECT. SELECT [DISTINCT] <campos> FROM <tabela> [condição] [ ; ] Paulo Damico - MDK Informática Ltda.
SQL comando SELECT Uma das tarefas mais requisitadas em qualquer banco de dados é obter uma listagem de registros armazenados. Estas tarefas são executadas pelo comando SELECT Sintaxe: SELECT [DISTINCT]
Definida pelo American National Standard Institute (ANSI) em 1986
2.3. Linguagens Relacionais SQL Structured Query Language Linguagem para o modelo relacional: Definida pelo American National Standard Institute (ANSI) em 1986 Adoptada em 1987 como um standard internacional
Create Sequence Cria uma sequence. Uma sequence é um objeto que permite vários usuários gerarem valores inteiros sem repetição.
Conceitos PL/Sql Create Sequence Cria uma sequence. Uma sequence é um objeto que permite vários usuários gerarem valores inteiros sem repetição. Sintaxe CREATE SEQUENCE [schema.]sequence [INCREMENT BY
Tarefa Orientada 19 Triggers
Tarefa Orientada 19 Triggers Objectivos: Criar triggers AFTER Criar triggers INSTEAD OF Exemplos de utilização Os triggers são um tipo especial de procedimento que são invocados, ou activados, de forma
Banco de Dados Oracle 10g: Introdução à Linguagem SQL
Oracle University Entre em contato: 0800 891 6502 Banco de Dados Oracle 10g: Introdução à Linguagem SQL Duração: 5 Dias Objetivos do Curso Esta classe se aplica aos usuários do Banco de Dados Oracle8i,
Formação em Banco de Dados. Subtítulo
Formação em Banco de Dados Subtítulo Sobre a APTECH A Aptech é uma instituição global, modelo em capacitação profissional, que dispõe de diversos cursos com objetivo de preparar seus alunos para carreiras
EXERCÍCIOS PRÁTICOS. Banco de Dados
EXERCÍCIOS PRÁTICOS Banco de Dados Introdução ao uso do SQL Structured Query Language, considerando tanto DDL Data Definition Language quanto DML Data Manipulation Language. Banco de Dados selecionado:
PROCEDIMENTOS ARMAZENADOS (Stored Procedures)
PROCEDIMENTOS ARMAZENADOS (Stored Procedures) 1. Introdução Stored Procedure é um conjunto de comandos, ao qual é atribuído um nome. Este conjunto fica armazenado no Banco de Dados e pode ser chamado a
O que são Bancos de Dados?
SQL Básico Liojes de Oliveira Carneiro [email protected] www.professor-liojes.blogspot.com O que são Bancos de Dados? É o software que armazena, organiza, controla, trata e distribui os dados
PROGRAMA. Objectivos Gerais :
PROGRAMA ANO LECTIVO : 2005/2006 CURSO : ENGENHARIA MULTIMÉDIA ANO: 2.º DISCIPLINA : SISTEMA DE GESTÃO DE BASE DE DADOS DOCENTE RESPONSÁVEL PELA REGÊNCIA : Licenciado Lino Oliveira Objectivos Gerais :
Linguagem de Consulta - SQL
Complementos da Linguagem SQL - Eliminando Tuplas Repetidas Exemplo: Obter o código das editoras que têm livros publicados CodEditora Titulo Publicacao... 04 Banco de Dados 1989 02 Análise 2000 01 XML
Memória de aula Aulas 11 e 12
Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: B1SGB - Sistemas Gerenciadores de Banco de Dados Memória de aula Aulas 11 e 12 1) Revisão a. Cláusula join (inner e outer) 2) Cláusula GROUP
Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:
Álgebra Relacional Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída operação (REL 1 ) REL 2 operação (REL 1,REL 2 ) REL 3 Operações básicas: seleção projeção
Introdução à Engenharia da Computação. Banco de Dados Professor Machado
Introdução à Engenharia da Computação Banco de Dados Professor Machado 1 Sistemas isolados Produção Vendas Compras Banco de Dados Produtos... Banco de Dados Produtos... Banco de Dados Produtos... Desvantagens:
EXEMPLOS DE COMANDOS NO SQL SERVER
EXEMPLOS DE COMANDOS NO SQL SERVER Gerenciando Tabelas: DDL - DATA DEFINITION LANGUAG Criando uma tabela: CREATE TABLE CLIENTES ID VARCHAR4 NOT NULL, NOME VARCHAR30 NOT NULL, PAGAMENTO DECIMAL4,2 NOT NULL;
Texto Base Livro texto: SQL Guia Prático 2ª Edição Rogério Luís de C. Costa. Banco de Dados II Comando Select. Gustavo Dibbern Piva
Texto Base Livro texto: SQL Guia Prático 2ª Edição Rogério Luís de C. Costa Banco de Dados II Comando Select Gustavo Dibbern Piva 1 Sintaxe do comando Select. Select
Exercícios com o intuito de cobrar todos os assuntos vistos em sala, relativos à Modelagem Conceitual, SQL, PL e XML. 1ª ETAPA
Exercícios com o intuito de cobrar todos os assuntos vistos em sala, relativos à Modelagem Conceitual, SQL, PL e XML. A 1ª etapa é referente à primeira unidade da cadeira. A 2ª etapa tem foco na segunda
Tratamento de Exceções
Tratamento de Exceções Laboratório de Bases de Dados Tratamento de Exceções Exceções erros e imprevistos que podem ocorrer durante a execução de um bloco PL/SQL SGBD ao encontrar um erro ou um imprevisto,
Introdução ao SQL. Aécio Costa
Aécio Costa A linguagem SQL é um padrão de linguagem de consulta comercial e possui as seguintes partes: Linguagem de definição de dados (DDL) Linguagem interativa de manipulação de dados (DML) Definição
2008.1. A linguagem SQL
SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão
Memória de aula Semanas 15 e 16
FMU Curso: Ciência da Computação Disciplina: Banco de Dados I Professor: Ecivaldo Matos Memória de aula Semanas 15 e 16 1) Incluindo linhas nas tabelas a. Para incluir linhas em tabelas utilize o comando
Programação SQL. INTRODUÇÃO II parte
Programação SQL INTRODUÇÃO II parte Programação SQL SELECT; INSERT; UPDATE; DELETE. Este conjunto de comandos faz parte da sublinguagem denominada por DML Data Manipulation Language (Linguagem de manipulação
SQL Structured Query Language
Janai Maciel SQL Structured Query Language (Banco de Dados) Conceitos de Linguagens de Programação 2013.2 Structured Query Language ( Linguagem de Consulta Estruturada ) Conceito: É a linguagem de pesquisa
SQL - Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL
SQL - Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL Criar uma base de dados (criar um banco de dados) No mysql: create database locadora; No postgresql: createdb locadora Criar
2008.2. SQL Avançado Continuação. Renata Viegas
SQL Avançado Continuação Renata Viegas Cláusula COMPUTE Sintaxe: SELECT FROM ORDER BY COMPUTE BY Para que serve? Gerar totalizadores
Banco de Dados. Prof. Antonio
Banco de Dados Prof. Antonio SQL - Structured Query Language O que é SQL? A linguagem SQL (Structure query Language - Linguagem de Consulta Estruturada) é a linguagem padrão ANSI (American National Standards
Reforçando conceitos de SQL Estudo de Caso: Agenciamento de Corridas de Táxis
Reforçando conceitos de SQL Estudo de Caso: Agenciamento de s de Táxis 1 Algumas Entidades existentes Estudo de Caso Cliente Agendada Fila Logradouro Zona Motorista Efetivada Táxi 2 Consulta Básica SQL
Material Teórico. Procedures, Functions, Exceptions e Triggers. Responsável pelo Conteúdo: Prof. Ms. Alexander Gobbato Albuquerque
Banco de Dados Material Teórico Procedures, Functions, Exceptions e Triggers Responsável pelo Conteúdo: Prof. Ms. Alexander Gobbato Albuquerque Revisão Textual: Prof. Ms. Claudio Brites Procedures, Functions,
GBC043 - Sistemas de Banco de Dados Funções e Gatilhos no PostgreSQL
GBC043 - Sistemas de Banco de Dados Funções e Gatilhos no PostgreSQL Ilmério Reis da Silva [email protected] www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC Página 2 Prgrama Teórico/Prático - SQL Linguagem
