Utilizando TimeDB na implementação de bancos de dados temporais

Tamanho: px
Começar a partir da página:

Download "Utilizando TimeDB na implementação de bancos de dados temporais"

Transcrição

1 Utilizando TimeDB na implementação de bancos de dados temporais Carlos Eduardo Santin 1, Willian Bruno Gomes Alves 1 1 Instituto de Informática Universidade Federal do Rio Grande do Sul (UFRGS) Caixa Postal Porto Alegre RS Brazil {cesantin,wbgalves}@inf.ufrgs.br Abstract. Most of the current applications uses databases that just represent one state of the real world. However, more and more we noticed the need of work with information referring to several points in the time. For that, we needed to access databases that store data in its current state, as also in the past and in some cases in the future. For this objective appeared temporal databases. The temporal control of a database can be implemented directly in the application or really creating a new database or using a layer on an existent database that allows the translation of temporal operations for SQL default. In this last model is the TimeDB, a tool that makes possible the use of commercial databases as if they were temporal databases, however this tool still presents the lack of some resources. Resumo. A maioria das aplicações atuais utilizam bancos de dados que representam apenas um estado do mundo real. No entanto, cada vez mais notamos a necessidade de trabalharmos com informações referentes a diversos pontos no tempo. Para isso, necessitamos acessar bancos de dados que armazenem dados em seu estado atual, como também no passado e em alguns casos no futuro. Com este objetivo surgiram os bancos de dados temporais. O controle temporal de um banco de dados pode ser implementado diretamente na aplicação ou criando realmente um novo banco de dados ou ainda utilizando uma camada sobre um banco já existente que permita a tradução de operações temporais para operações SQL padrão. Neste último modelo enquadra-se o TimeDB, uma ferramenta que possibilita a utilização de bancos comerciais como se fossem bancos temporais, no entanto esta ferramenta ainda apresenta a carência de alguns recursos. 1. Introdução A grande maioria das aplicações que utilizam bancos de dados têm acesso apenas a um único estado do mundo real, geralmente o estado mais atual do banco, e uma atualização do mesmo resulta na perda dos dados antigos. Existem, no entanto, muitas aplicações em que é necessária a manipulação de outros estados do banco, como estados passados e até mesmo estados futuros. Exemplos dessas aplicações são: controle de estoque, sistemas de reserva, sistemas de suporte à decisão, etc. Com isso, surgem os bancos de dados temporais, que permitem armazenar todos os estados de uma aplicação, registrando sua evolução com o passar do tempo.

2 Na seção 2 é feita uma breve apresentação de bancos de dados temporais, sendo mostradas algumas características de um banco de dados temporal específico, o TimeDB, na seção 3. A seção 4 apresenta um estudo de caso utilizando o TimeDB e o Oracle 10g, e nas seções que seguem são exibidas algumas questões atuais, tendências futuras e as conclusões deste trabalho. 2. Bancos de Dados Temporais Como dito anteriomente, os bancos de dados não-temporais apenas dão suporte ao acesso de apenas um único estado do mundo real, geralmente o estado mais recente, e uma atualização nas informações desse banco significa a perda dos dados antigos. Contudo, existe um grande número de aplicações que necessitam ter acesso a não apenas o estado mais recente do banco, mas também a estados passados e futuros. Um dos primeiros passos na construção de bancos de dados temporais é a associação de informação de tempo aos dados, permitindo a distinção entre diferentes estados [Steiner 1999]. Para isso, diferentes noções do tempo são relevantes para a construção de bancos de dados temporais. O tempo de validade (valid time), que é o tempo no qual os dados são válidos no mundo real, e o tempo de transação (transaction time), que é o tempo em que os dados são inseridos no banco. Essas diferentes noções de tempo permitem a distinção entre tipos de bancos de dados temporais: bancos de dados de tempo de validade, bancos de dados de tempo de transação e bancos de dados bitemporais. Os bancos de dados convencionais são também conhecidos como snapshot database, por armazenarem um único estado do mundo real, geralmente o estado mais recente. São exemplos de aplicações que lidam com dados temporais: aplicações financeiras, sistemas de reserva, sistemas de gerenciamento de informações médicas, sistemas de suporte à decisão, etc. [Steiner 1999] afirma, que de fato, é difícil identificar domínios de aplicações que não envolvam o gerenciamento de dados temporais Implementação de Bancos de Dados Temporais [Steiner 1998] discute diferentes soluções para gerenciar dados temporais. Eles identificam quatro possibilidades: (i) utilizar o tipo DATE fornecido por SGBDs não temporais e construir todo o suporte temporal na própria aplicação, (ii) implementar um tipo abstrato de dado para o tempo, (iii) estender um modelo de dados não temporal para um modelo temporal, e (iv) generalizar um modelo de dados não-temporal para um modelo temporal. 3. TimeDB O TimeDB funciona como uma camada acoplada a bancos de dados comerciais, traduzindo expressões temporais para expressões SQL padrão. Desta forma é possível fazer uso de características já existentes em bancos de dados, como a persistência e concorrência, sem a necessidade de reimplementá-las. Com o TimeDB é possível armazenar e manipular diversos estados de uma base de dados. A grande vantagem de sua utilização é que bases de dados já existentes, armazenadas em SGBD comerciais, e aplicações que acessam estes dados podem continuar sendo utilizadas enquanto que novas aplicações que tratam dados temporais podem ser adicionadas.

3 O TimeDB utiliza a linguagem ATSQL2 que é um linguagem de pesquisa temporal baseada na linguagem SQL, que suporta alterações, visões, declarações e restrições temporais. Por ter sido baseada em SQL, qualquer expressão construída utilizando SQL padrão, também será suportada pela linguagem ATSQL2. Na versão 1.0 do TimeDB eram suportadas consultas, inserções, alterações, exclusões, criação de tabelas e visões, tudo isso de forma temporal, além de declarações e restrições temporais em tabelas. Nesta versão também era suportado tempo de validade e tempo de transação. O TimeDB foi reimplementado utilizando-se a linguagem de programação Java, tornando-se independente de plataforma. Nesta nova implementação algumas diferenças surgiram em relação a versão 1.0: TimeDB 2.0 utiliza JDBC, permitindo a conexão com diferentes bancos de dados; TimeDB 2.0 possui uma interface gráfica que permite a execução de consultas de uma forma mais fácil; TimeDB 2.0 é otimizado em relação a construção de tabelas auxiliares; TimeDB 2.0 possui uma interface de comunicação nativa que pode ser usada por aplicações Java para execução de expressões ATSQL2. Além disso, a versão 2.0 acrescentou a possibilidade de utilização de funções de agregação, cláusulas GROUP BY, cláusulas HAVING e restrições de colunas e tabelas, no entanto algumas características presentes na versão 1.0 não são mais suportadas, como as operações de alteração e operações de tempo de transação e bitemporais. Atualmente o TimeDB é compatível com os bancos Oracle, Sybase e IBM Cloudscape ATSQL2 Nesta seção mostraremos a sintaxe utilizada pelo ATSQL2 para criação, pesquisa e manutenção dos dados e na seção seguinte faremos uso dos comandos aqui exibidos para realização de um estudo de caso. Um exemplo da sintaxe do ATSQL2 pode ser visto na tabela Tipos especiais de dados O TimeDB trabalha com alguns tipos especiais de dados voltados para questões temporais que são o interval, o period e o date. O tipo interval permite especificar um intervalo de tempo que pode englobar dias, meses e anos (e.g., interval 3 year 2 month). O tipo period permite a especificação de períodos entre dois pontos no tempo (e.g., period [ )). O tipo date especifica que um determinado dado é uma data (e.g., date ). 4. Estudo de Caso Com objetivo de exemplificar o funcionamento do TimeDB para implementação de um banco de dados temporal, é mostrado nesta seção um cenário onde os dados podem ser modelados de forma temporal e uma implementação deste cenário utilizando o TimeDB em conjunto com o banco de dados Oracle 10g.

4 Criação de Tabelas Inserção de Dados Consulta de Dados Exclusão de Dados CREATE TABLE nometabela(campo1 tipo,..., campon tipo) AS VALIDTIME; /* Aceita somente tempo de validade */ VALIDTIME PERIOD [tempoinicial-tempofinal) INSERT INTO nometabela VALUES (valor1,..., valorn); /* TempoInicial e TempoFinal podem assumir os valores beginning e forever respectivamente para denotar infinito */ NONSEQUENCED VALIDTIME SELECT * FROM nometabela; /* Retorna os dados da tabela sem levar em consideração o tempo de validade */ VALIDTIME SELECT * FROM nometabela; /* Retorna os dados da tabela levando em consideração o tempo de validade */ VALIDTIME (SELECT * FROM nometabela) (PERIOD); /* Retorna as instâncias de um mesmo registro que são continuidade uma da outra em função do tempo em um único registro */ VALIDTIME PERIOD [tempoinicial-tempofinal) SELECT * FROM nometabela; /* Retorna os dados compreendidos entre um tempo inicial e um tempo final */ DELETE FROM nometabela WHERE condicao; /* Ao excluir um registro com tempo final igual a forever, este receberá como tempo final a data e horário da exclusão, não sendo fisicamente excluído */ Table 1. Comandos ATSQL Cenário Neste artigo é proposto como cenário um sistema para controle do departamento pessoal de uma empresa. O departamento pessoal mantém um cadastro dos funcionários que trabalham atualmente na empresa, bem como os que já trabalharam. No cadastro do funcionário é armazenado o seu nome, um código identificador único, seu cpf e rg, o seu salário, a data de sua admissão, seu cargo e o departamento ao qual pertence. O sistema também possui um cadastro de departamentos que apresenta o código único do departamento e o seu nome. Com o sistema atualmente implementado esta empresa passa pelo problema de perder informações antigas dos seus funcionários, informações essas que não são mais atualmente verdadeiras mas que são úteis para geração de algumas estatísticas. O usuário necessita que o salário anterior do funcionário não seja perdido após uma alteração de seu valor para que dessa forma possa ser realizada uma estatística do aumento ocorrido durante sua permanência na empresa. Também é necessário manter um histórico dos cargos que já foram assumidos pelo funcionário bem como os departamentos pelo qual ele passou. No primeiro momento o sistema deve apresentar a possibilidade de obtenção das seguintes informações: Dado o código de um funcionário, obter todos os cargos que ele já possuiu dentro da empresa; Dado o código de um funcionário, obter todos os departamentos nos quais ele já trabalhou; Obter a média de salário do funcionário durante todo o tempo em que esteve empregado; Obter o número de funcionários que trabalham atualmente na empresa; Obter o maior e o menor salário pago atualmente na empresa;

5 Obter o maior e o menor salário já pago na empresa; Listar os departamentos existentes na empresa e os maiores e menores salários atuais de cada departamento; Listar o número de funcionários existentes atualmente em cada departamento. Posteriormente novas consultas poderão ser necessárias Modelagem do banco de dados Para a implementação do sistema explicado na seção anterior, foi gerado o modelo ER exibido na figura 1. Figure 1. Modelo ER para o sistema de controle de funcionários 4.3. Implementação utilizando TimeDB e Oracle 10g Para a implementação foi utilizado o TimeDB versão 2.2 e a interface gráfica que o acompanha, através da qual foi feita a criação do banco de dados, operações de manutenção e consultas. Para possibilitar a criação de tabelas através da interface gráfica, a primeira coisa que deve ser feita é acessar o menu TimeDB e executar a opção Create DB. Ao realizar isso serão criadas cinco tabelas para o usuário no oracle, as tabelas ASSERTIONS, KEYS, TABLE TYPES, TABLE VIEW SCHEMES e VIEWS. Elas são utilizadas internamente pelo TimeDB para controle das informações temporais. A tabela Funcionario foi criada de forma temporal com o objetivo de permitir que dados do funcionário não sejam perdidos após uma alteração, como por exemplo, um aumento de salário. Para a criação das tabelas foi executado o seguinte script SQL: CREATE TABLE Departamento (codigo INTEGER PRIMARY KEY, nome VARCHAR(40)); CREATE TABLE Cargo (codigo INTEGER PRIMARY KEY, nome VARCHAR(40)); CREATE TABLE CargoDep (codigocargodep INTEGER PRIMARY KEY, codigocargo INTEGER, codigodep INTEGER, FOREIGN KEY (codigocargo) REFERENCES Cargo(codigo),FOREIGN KEY (codigodep) REFERENCES Departamento(codigo)); CREATE TABLE Funcionario (codigo INTEGER PRIMARY KEY, nome VARCHAR(40), cpf VARCHAR(14), rg VARCHAR(10), salario FLOAT, admissao DATE, codigocargodep INTEGER, FOREIGN KEY (codigocargodep) REFERENCES CargoDep(codigoCargoDep)) AS VALIDTIME; Ao criar a tabela Funcionario de forma temporal, o TimeDB automaticamente acrescentou duas colunas à tabela, a coluna de tempo de validade inicial e a coluna de

6 tempo de validade final, demonstrado na figura 2 através dos campos VTS TIMEDB e VTE TIMEDB respectivamente. Figure 2. Tabela Funcionario Tendo as tabelas criadas, o próximo passo foi populá-las com dados para posterior realização de consultas. Foram criados quatro departamentos: Testes, Desenvolvimento, Análise, Gerência. Também foram criados sete cargos: Estagiário, Testador, Programador Júnior, Programador Sênior, Analista de Sistemas Júnior, Analista de Sistemas Sênior e Gerente de Projetos. A relação entre os cargos e departamentos pode ser visualizada na tabela 2. Cargo Estagiário Estagiário Estagiário Testador Programador Júnior Programador Sênior Analista de Sistemas Júnior Analista de Sistemas Sênior Gerente de Projetos Departamento Testes Desenvolvimento Análise Testes Desenvolvimento Desenvolvimento Análise Análise Gerência Table 2. Relação Cargos X Departamentos A tabela Funcionario foi populada com dados que permitissem a realização das consultas necessárias citadas na definição do cenário. Logo após as seguintes consultas foram criadas: Dado o código de um funcionário, obter todos os cargos que ele já possuiu dentro da empresa: SELECT c.nome FROM cargo c WHERE EXISTS (SELECT cd.codigocargo FROM cargodep cd WHERE cd.codigocargo = c.codigo AND EXISTS (VALIDTIME SELECT f.codigocargodep FROM funcionario f WHERE f.codigo = :CODIGO AND f.codigocargodep = cd.codigocargodep)); A necessidade da criação de subselects foi devido a não aceitação por parte do TimeDB de realizar um VALIDTIME SELECT em tabelas que não foram criadas de forma temporal. Dado o código de um funcionário, obter todos os departamentos nos quais ele já trabalhou:

7 SELECT d.nome FROM departamento d WHERE EXISTS (SELECT cd.codigocargo FROM cargodep cd WHERE cd.codigodep = d.codigo AND EXISTS (VALIDTIME SELECT f.codigocargodep FROM funcionario f WHERE f.codigo = :CODIGO AND f.codigocargodep = cd.codigocargodep)); Obter a média de salário do funcionário durante todo o tempo em que esteve empregado: NONSEQUENCED VALIDTIME SELECT AVG(salario) FROM Funcionario WHERE codigo = :CODIGO; Obter o número de funcionários que trabalham atualmente na empresa: NONSEQUENCED VALIDTIME SELECT COUNT(f.codigo) FROM funcionario f WHERE (END(VALIDTIME(f)) = FOREVER); Obter o maior e o menor salário pago atualmente na empresa: NONSEQUENCED VALIDTIME SELECT MAX(f.salario) FROM Funcionario f WHERE (END(VALIDTIME(f)) = FOREVER); NONSEQUENCED VALIDTIME SELECT MIN(f.salario) FROM Funcionario f WHERE (END(VALIDTIME(f)) = FOREVER); Obter o maior e o menor salário já pago na empresa: NONSEQUENCED VALIDTIME SELECT MAX(f.salario) FROM Funcionario f; NONSEQUENCED VALIDTIME SELECT MIN(f.salario) FROM Funcionario f; Listar os departamentos existentes na empresa e os maiores e menores salários atuais de cada departamento: SELECT cd.codigodep, d.nome, MAX(f.salario) FROM CargoDep cd, Departamento d, Funcionario f WHERE f.codigocargodep = cd.codigocargodep AND cd.codigodep = d.codigo GROUP BY cd.codigodep, d.nome; SELECT cd.codigodep, d.nome, MIN(f.salario) FROM CargoDep cd, Departamento d, Funcionario f WHERE f.codigocargodep = cd.codigocargodep AND cd.codigodep = d.codigo GROUP BY cd.codigodep, d.nome; Listar o número de funcionários existentes atualmente em cada departamento: SELECT cd.codigodep, d.nome, COUNT(f.codigo) FROM CargoDep cd, Departamento d, Funcionario f WHERE f.codigocargodep = cd.codigocargodep AND cd.codigodep = d.codigo GROUP BY cd.codigodep, d.nome; 5. Questões Atuais Atualmente é difícil encontrar um suporte à informações temporais em SGBDs comerciais, o que dificulta bastante a construção de aplicações que necessitam manipular dados temporais por motivos já mostrados nas seções anteriores. O que é encontrado hoje são extensões de SGBDs que dão suporte à manipulação de dados temporais, porém em tais extensões os esforços são geralmente concentrados em algumas características especiais como estruturas de dados temporais, projeto da linguagem de consulta, álgebra temporal ou restrições de integridade temporal. Por esse motivo, [Steiner 1998] argumenta que esta abordagem está a metade do caminho da abordagem ideal, que seria a generalização de um modelo de dados.

8 6. Conclusões e Tendências Futuras A tendência natural é que seja criado um novo modelo de dados que tenha suporte à manipulação de informações temporais. Pois apesar das extensões de modelos de dados não-temporais proporcionarem essa manipulação, existem restrições as quais só podem ser eliminadas com a construção de um novo modelo. Com respeito a generalização das operações da álgebra temporal, um passo já foi tomado sendo definido o conceito de completeza temporal (temporal completeness) [Böhlen and Marti 1994] que introduz requerimentos proveitosos a respeito de dados e consultas temporais. Neste trabalho foi estudado o conceito de banco de dados temporais e a ferramenta TimeDB que serve como uma camada para tradução de SQLs temporais em SQLs padrões. O TimeDB mostrou-se uma ferramenta de grande valia no auxilio da implementação de aplicações temporais, no entanto algumas necessidades foram sentidas, como por exemplo, ao incluir um novo registro com o mesmo valor de chave primária de um registro com tempo final de validade forever, este não é finalizado. A finalização dos registros com o tempo final em aberto só foi realizada, em nossos testes, através do comando de exclusão. Ou seja, o TimeDB possibilita a realização de operações temporais em um banco de dados, no entanto em alguns casos é necessário que o programador interfira criando conjuntos de operações para atingir um estado do banco que poderia ser atingido de forma automática. References Böhlen, M. and Marti, R. (1994). On the completeness of temporal database query languages. In Gabbay, D. M. and Ohlbach, H.-J., editors, Temporal Logic: 1st International Conference (ICTL 94), pages Springer, Berlin, Heidelberg. Steiner, A. (1998). A Generalisation Approach to Temporal Data Models and their Implementations. PhD thesis, Swiss Federal Institute of Technology. Steiner, A. (1999). TimeDB Acessado em junho de 2006.

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix

Leia mais

PHP INTEGRAÇÃO COM MYSQL PARTE 1

PHP INTEGRAÇÃO COM MYSQL PARTE 1 INTRODUÇÃO PHP INTEGRAÇÃO COM MYSQL PARTE 1 Leonardo Pereira leonardo@estudandoti.com.br Facebook: leongamerti http://www.estudandoti.com.br Informações que precisam ser manipuladas com mais segurança

Leia mais

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais 1 LINGUAGEM SQL SQL Server 2008 Comandos iniciais SQL - STRUCTURED QUERY LANGUAGE Quando os Bancos de Dados Relacionais estavam sendo desenvolvidos, foram criadas linguagens destinadas à sua manipulação.

Leia mais

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

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

Leia mais

1. Domínio dos Atributos

1. Domínio dos Atributos Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br 1. Domínio dos Atributos Por domínio, ou tipo, pode-se entender como a maneira como determinado atributo (ou campo, se tratando

Leia mais

Linguagem SQL Sub-linguagem DDL

Linguagem SQL Sub-linguagem DDL Linguagem SQL Sub-linguagem DDL 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 Language para suas

Leia mais

Programação SQL. Introdução

Programação SQL. Introdução Introdução Principais estruturas duma Base de Dados: Uma BD relacional é constituída por diversas estruturas (ou objectos ) de informação. Podemos destacar: Database: designa a própria BD; Table/Tabela:

Leia mais

Tarefa Orientada 15 Manipulação de dados

Tarefa Orientada 15 Manipulação de dados Tarefa Orientada 15 Manipulação de dados Objectivos: Criação de tabelas teste Comando INSERT INTO Inserção de dados Comando INSERT Actualização de dados Comando UPDATE Eliminação de dados Comando DELETE

Leia mais

SQL Structured Query Language

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

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

Structured Query Language (SQL)

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

Leia mais

Comandos de Manipulação

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

Leia mais

NOME SEXO CPF NASCIMENTO SALARIO

NOME SEXO CPF NASCIMENTO SALARIO Tutorial SQL Fonte: http://www.devmedia.com.br/articles/viewcomp.asp?comp=2973 Para começar Os Sistemas Gerenciadores de Bancos de Dados Relacionais (SGBDr) são o principal mecanismo de suporte ao armazenamento

Leia mais

2008.1. A linguagem SQL

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

Leia mais

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011 Banco de Dados I Aula 12 - Prof. Bruno Moreno 04/10/2011 Plano de Aula SQL Definição Histórico SQL e sublinguagens Definição de dados (DDL) CREATE Restrições básicas em SQL ALTER DROP 08:20 Definição de

Leia mais

2008.1 SQL. Autor: Renata Viegas

2008.1 SQL. Autor: Renata Viegas SQL Autor: Renata Viegas 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

Leia mais

SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária

SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária Cascavel Novembro de 2009 Pedro Patitucci Finamore Daniel Bordignon Cassanelli Marco Antonio da Rosa DIAGRAMAS DE CLASSE E SEQUÊNCIA

Leia mais

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

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,

Leia mais

Structured Query Language (SQL) Ambiente Simplificado de um SGBD

Structured Query Language (SQL) Ambiente Simplificado de um SGBD Structured Query Language (SQL) Ambiente Simplificado de um SGBD 2 1 Características dos SGBDs Natureza auto-contida de um sistema de banco de dados: metadados armazenados num catálogo ou dicionário de

Leia mais

Básico da Linguagem SQL. Definição de Esquemas em SQL. SQL(Structured Query Language)

Básico da Linguagem SQL. Definição de Esquemas em SQL. SQL(Structured Query Language) Básico da Linguagem SQL Definição de Esquemas em SQL SQL(Structured Query Language) Desenvolvida como a linguagem de consulta do protótipo de SGBD Sistema R (IBM, 1976). Adotada como linguagem padrão de

Leia mais

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Prof. MSc. Hugo Souza Iniciando nossas aulas sobre

Leia mais

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

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

Leia mais

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

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:

Leia mais

SQL comando SELECT. SELECT [DISTINCT] <campos> FROM <tabela> [condição] [ ; ] Paulo Damico - MDK Informática Ltda.

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]

Leia mais

8. Outros tipos de Transação (Modo de Transação de Autoconfirmação e Modo Implícito)

8. Outros tipos de Transação (Modo de Transação de Autoconfirmação e Modo Implícito) 8. Outros tipos de Transação (Modo de Transação de Autoconfirmação e Modo Implícito) Nos itens anteriores vimos transações do tipo explícitas, ou seja, aquelas que iniciam com BEGIN TRANSACTION. As outras

Leia mais

Tarefa Orientada 16 Vistas

Tarefa Orientada 16 Vistas Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um

Leia mais

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

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

Leia mais

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 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

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

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,

Leia mais

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos Objetivos: Criar restrições para atributos, chaves primárias e estrangeiras; Explorar consultas SQL com uso de

Leia mais

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Trabalhando com conexão ao banco de dados MySQL no Lazarus Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 4 O Componente Trabalhando com conexão ao banco de dados MySQL no Lazarus Ano: 03/2011

Leia mais

SQL. Curso Prático. Celso Henrique Poderoso de Oliveira. Novatec

SQL. Curso Prático. Celso Henrique Poderoso de Oliveira. Novatec SQL Curso Prático Celso Henrique Poderoso de Oliveira Novatec 1 Introdução Desde o início da utilização dos computadores, sabemos que um sistema é feito para aceitar entrada de dados, realizar processamentos

Leia mais

Banco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes

Banco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes Banco de dados 1 Linguagem SQL DDL e DML Professor: Victor Hugo L. Lopes Agenda: Introdução à linguagem de dados; DDL; DML; CRUD; Introdução à linguagem SQL. 2 Por que precisamos da linguagem SQL? A algebra

Leia mais

Principais Comandos SQL Usados no MySql

Principais Comandos SQL Usados no MySql Principais Comandos SQL Usados no MySql O que é um SGBD? Um Sistema Gerenciador de Banco de Dados (como no Brasil) ou Sistema Gestor de Base de Dados (SGBD) é o conjunto de programas de computador (softwares)

Leia mais

AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES

AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES BANCO DE DADOS GERENCIAL 1 AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES Integridade de domínio A integridade de domínio é a validade de entradas para uma coluna específica. É possível aplicar a integridade

Leia mais

Banco de Dados. Um momento crucial na organização dos dados é a forma com que cadastramos estes dados, a estrutura de armazenamento que criamos.

Banco de Dados. Um momento crucial na organização dos dados é a forma com que cadastramos estes dados, a estrutura de armazenamento que criamos. Banco de Dados O que é um Banco de Dados? Este assunto é muito vasto, tentaremos resumi-lo para atender as questões encontradas em concursos públicos. Já conhecemos o conceito de dado, ou seja, uma informação

Leia mais

PROCEDIMENTOS ARMAZENADOS (Stored Procedures)

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

Leia mais

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada. Conceitos básicos Angélica Toffano Seidel Calazans E-mail: angelica_toffano@yahoo.com.br Conceitos introdutórios de Modelagem de dados Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Leia mais

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 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

Leia mais

Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados

Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Banco de Dados. Prof. Antonio

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

Leia mais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância

Leia mais

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix Ingress SQL

Leia mais

Introdução ao SQL. Aécio Costa

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

Leia mais

Programação SQL. Manipulação de Dados. DML Data Manipulation Language

Programação SQL. Manipulação de Dados. DML Data Manipulation Language Programação SQL Manipulação de Dados DML Data Manipulation Language Manipulação de Dados (DML) Os comandos INSERT, UPDATE, DELETE, são normalmente classificados como pertencendo a uma sublinguagem da linguagem

Leia mais

Introdução à linguagem SQL

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

Leia mais

4.6. SQL - Structured Query Language

4.6. SQL - Structured Query Language 4.6. SQL - Structured Query Language SQL é um conjunto de declarações que é utilizado para acessar os dados utilizando gerenciadores de banco de dados. Nem todos os gerenciadores utilizam SQL. SQL não

Leia mais

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 BASES DE DADOS I LTSI/2 Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 A Linguagem SQL As raízes da linguagem SQL remontam a 1974, altura em que a IBM desenvolvia

Leia mais

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre BANCO DE DADOS BANCO DE DADOS Prof. Patrícia Lucas 3º Trimestre ROTEIRO PARA O 3º TRIMESTRE 1. O MySQL DDL SQL 1. Como funciona o MySQL 2. Como criar um banco de dados no MySQL 3. Como criar tabelas: comandos

Leia mais

Banco de Dados. Conversão para o Banco de Dados SisMoura

Banco de Dados. Conversão para o Banco de Dados SisMoura Banco de Dados Conversão para o Banco de Dados SisMoura Objetivo : Converter as informações contidas em um determinado banco de dados para o banco de dados do Sismoura. Restaurar Banco de Dados em branco

Leia mais

Agenda. Banco de Dados Temporais. Banco de Dados Temporais. Introdução. Banco de Dados Temporais PRINCIPAIS CONCEITOS DE REPRESENTAÇÃO TEMPORAL

Agenda. Banco de Dados Temporais. Banco de Dados Temporais. Introdução. Banco de Dados Temporais PRINCIPAIS CONCEITOS DE REPRESENTAÇÃO TEMPORAL Banco de Dados Lucilia Yoshie Araki Marcio Cezar Santos da Rosa Agenda Introdução; Banco de Dados ; Principais Conceitos de Representação Temporal; Modelagem de Dados em Banco De Dados Temporal; Relacionamentos

Leia mais

BANCO DE DADOS: SQL. Edson Anibal de Macedo Reis Batista. 27 de janeiro de 2010

BANCO DE DADOS: SQL. Edson Anibal de Macedo Reis Batista. 27 de janeiro de 2010 BANCO DE DADOS: SQL UERN - Universidade do Estado do Rio Grande do Norte. Departamento de Ciências da Computação. 27 de janeiro de 2010 índice 1 Introdução 2 3 Introdução SQL - Structured Query Language

Leia mais

Disciplina: Unidade III: Prof.: E-mail: Período:

Disciplina: Unidade III: Prof.: E-mail: Período: Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto

Leia mais

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br BANCO DE DADOS info 3º ano Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br Na última aula estudamos Unidade 4 - Projeto Lógico Normalização; Dicionário de Dados. Arquitetura

Leia mais

Tarefa Orientada 19 Triggers

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

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA RESUMO DE AULA CRIAÇÃO E MANIPULAÇÃO DO BANCO DE DADOS

Leia mais

Bases de Dados. Lab 1: Introdução ao ambiente

Bases de Dados. Lab 1: Introdução ao ambiente Departamento de Engenharia Informática 2010/2011 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

Usando PostgreSQL na Regra de Negócio de um ERP. Fabiano Machado Dias Eduardo Wolak

Usando PostgreSQL na Regra de Negócio de um ERP. Fabiano Machado Dias Eduardo Wolak Usando PostgreSQL na Regra de Negócio de um ERP Fabiano Machado Dias Eduardo Wolak Regra de negócio? São todas as regras existentes num sistema de informação, que ditam seu comportamento, suas restrições

Leia mais

Banco de Dados I. Introdução. Fabricio Breve

Banco de Dados I. Introdução. Fabricio Breve Banco de Dados I Introdução Fabricio Breve Introdução SGBD (Sistema Gerenciador de Banco de Dados): coleção de dados interrelacionados e um conjunto de programas para acessar esses dados Coleção de dados

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

Banco de Dados Avançados Banco de Dados Ativo

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...

Leia mais

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 UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II BANCO DE DADOS II AULA 1 Linguagem SQL Linguagem de definição de dados (DDL) DISCIPLINA: Banco de Dados

Leia mais

Projeto de Banco de Dados

Projeto de Banco de Dados Projeto de Banco de Dados Prof. Marcelo Siedler Objetivos do documento: Apresentar os conceitos de stored procedutes e funções. Exercícios. Referência: http://dev.mysql.com/doc/refman/4.1/pt/stored-procedures.html

Leia mais

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 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

Leia mais

4 Implementação e Resultados Experimentais

4 Implementação e Resultados Experimentais 4 Implementação e Resultados Experimentais Com o objetivo de fazer a criação automática de visões materializadas, ou seja, prover uma solução on-the-fly para o problema de seleção de visões materializadas,

Leia mais

Fundamentos dos Sistemas de Informação Organização de Dados e Informações

Fundamentos dos Sistemas de Informação Organização de Dados e Informações Fundamentos dos Sistemas de Informação Organização de Dados e Informações http://professor.fimes.edu.br/milena milenaresende@fimes.edu.br Sistema de Gerenciamento de Bases de Dados (DBMS) A implementação

Leia mais

Comandos DDL. id_modulo = id_m odulo

Comandos DDL. id_modulo = id_m odulo Comandos DDL Estudo de Caso Controle Acadêmico Simplificado Uma escola contém vários cursos, onde cada aluno possui uma matricula num determinado curso. Estes cursos, por sua vez, possuem módulos, aos

Leia mais

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento. Roteiro Modelo de Dados Relacional Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Introdução

Leia mais

Linguagem de Consulta - SQL

Linguagem de Consulta - SQL SQL Structured Query Language Linguagem de Consulta Estruturada; Originou-se da linguagem SEQUEL (1974); Revisada e chamada de SQL em 1976/77; Em 1986, padronizada pelo ANSI/ISO - chamada SQL-86; Em 1987

Leia mais

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL 1. O que é Linguagem SQL 2. Instrução CREATE 3. CONSTRAINT 4. ALTER TABLE 5. RENAME TABLE 6. TRUCANTE TABLE 7. DROP TABLE 8. DROP DATABASE 1 1. O que é Linguagem SQL 2. O SQL (Structured Query Language)

Leia mais

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL SQL APOSTILA INTRODUÇÃO Uma linguagem de consulta é a linguagem por meio da qual os usuários obtêm informações do banco de dados. Essas linguagens são, tipicamente, de nível mais alto que as linguagens

Leia mais

Documentação da Ferramenta EMap Edimar Manica

Documentação da Ferramenta EMap Edimar Manica Documentação da Ferramenta EMap Edimar Manica 1. Objetivo A ferramenta EMap (Extrai e Mapeia) tem como objetivo permitir o suporte a consultas temporais, escritas na linguagem de consulta temporal TSQL2,

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

Linguagem de Consulta Estruturada SQL- DML

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

Leia mais

SQL Server 2008. Ferramenta de administração. SQL Server Management Studio. 1º passo conectar ao banco de dados 2ª Query (consulta) usando SQL

SQL Server 2008. Ferramenta de administração. SQL Server Management Studio. 1º passo conectar ao banco de dados 2ª Query (consulta) usando SQL SQL Server 2008 Ferramenta de administração SQL Server Management Studio Ferramenta de acesso e administração de dados em modo gráfico 1º passo conectar ao banco de dados 2ª Query (consulta) usando SQL

Leia mais

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 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

Leia mais

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Agenda Linguagem SQL: Introdução; Construção/Definição de tabelas. 2 Linguagem SQL SQL - Structured Query Language;

Leia mais

EXERCÍCIOS PRÁTICOS. Banco de Dados

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:

Leia mais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais

Leia mais

RESPOSTA AO RECURSO. 11110011+00010001 = 100000100 que corresponde a 260 decimal, alternativa A.

RESPOSTA AO RECURSO. 11110011+00010001 = 100000100 que corresponde a 260 decimal, alternativa A. QUESTÃO: 12 Na questão 12 referente a conhecimentos específicos da área de "Informática: Banco de dados e programação" 11110011+00010001 = 100000100 que corresponde a 260 decimal, alternativa A. RESPOSTA:

Leia mais

INTRODUÇÃO. Diferente de Bando de Dados

INTRODUÇÃO. Diferente de Bando de Dados INTRODUÇÃO Diferente de Bando de Dados 1 INTRODUÇÃO DADOS São fatos conhecidos que podem ser registrados e que possuem significado. Ex: venda de gasolina gera alguns dados: data da compra, preço, qtd.

Leia mais

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011 Banco de Dados Aula 1 - Prof. Bruno Moreno 16/08/2011 Roteiro Apresentação do professor e disciplina Definição de Banco de Dados Sistema de BD vs Tradicional Principais características de BD Natureza autodescritiva

Leia mais

TEMPTOOL UMA FERRAMENTA PARA A MODELAGEM TEMPORAL DOS DADOS

TEMPTOOL UMA FERRAMENTA PARA A MODELAGEM TEMPORAL DOS DADOS TEMPTOOL UMA FERRAMENTA PARA A MODELAGEM TEMPORAL DOS DADOS Eugênio de O. Simonetto 1, Cristiano R. Moreira, Duncan D. A. Ruiz 2, Luciano C. Ost 1, Glauco B.V.Santos 1 RESUMO O trabalho apresenta uma ferramenta

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios BANCO DE DADOS Fixação dos conteúdos Integridade Referencial Normalização Exercícios BANCO DE DADOS X SGBD Banco de Dados: Um "banco de dados" pode ser definido como um conjunto de "dados" devidamente

Leia mais

Bases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1.

Bases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1. Departamento de Engenharia Informática 2008/2009 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Manipulação de Banco de Dados com Java Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Acesso a um SGBD Em sistemas mais simples o uso de arquivos pode ser usado mas para aplicações

Leia mais

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza PHP e Banco de Dados progweb2@thiagomiranda.net Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net PHP e Banco de Dados É praticamente impossível

Leia mais

SQL DDL. Frederico D. Bortoloti freddb@ltc.ufes.br

SQL DDL. Frederico D. Bortoloti freddb@ltc.ufes.br Banco de Dados I SQL DDL Frederico D. Bortoloti freddb@ltc.ufes.br Introdução Modelo relacional encontra-se padronizado pela indústria de informática. Ele é chamado de padrão SQL (Structured Query Language)

Leia mais

Como funcionam os comandos de SQL no Logic Basic Por Alan Oliveira

Como funcionam os comandos de SQL no Logic Basic Por Alan Oliveira Como funcionam os comandos de SQL no Logic Basic Por Alan Oliveira www.linksinfo.com.br Tutorial versão 1.0 Sobre o Logic basic: Parte 1 Sobre o Logic Basic e o SQL O Logic Basic é uma linguagem de programação

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.

Leia mais

Persistência de Dados

Persistência de Dados Persistência de s Universidade do Estado de Santa Catarina - Udesc Centro de Ciências Tecnológicas - CCT Departamento de Ciência da Computação Tecnologia de Sistemas de Informação Estrutura de s II - DAD

Leia mais

Android e Bancos de Dados

Android e Bancos de Dados (Usando o SQLite) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do

Leia mais

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados. BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Hoje é

Leia mais