Um Tradutor de Esquemas Relacionais em XML para Esquemas SQL
|
|
- João Gabriel Lameira Escobar
- 7 Há anos
- Visualizações:
Transcrição
1 UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA SISTEMAS DE INFORMAÇÃO Resumo do Trabalho de Conclusão de Curso Entitulado Um Tradutor de Esquemas Relacionais em XML para Esquemas SQL de Autoria de Alisson Giovanni Rosa Aluno: Renato Sulzbach Orientador: Ronaldo dos Santos Mello 1
2 No contexto do trabalho, o foco foram dados que representam esquemas relacionais. Muitas ferramentas de projeto de bancos de dados relacionais persistem o resultado do desenvolvimento, ou seja, o esquema relacional, em formato XML. É o caso de ferramentas comerciais como a ERWIN [ERC07] e a Rational Rose [IBM07]; ou gratuitas, como DBDesigner [DBD07] e a brasileira brmodelo [CHC05], desenvolvida no GBD/UFSC. Porém, cada ferramenta segue um esquema proprietário para a disposição destas informações no arquivo XML. Isto torna extremamente caro o trabalho de extrair o esquema relacional destes arquivos XML (na intenção de gerar o modelo físico para um SGBD específico), na impossibilidade de se ter acesso à ferramenta que criou este arquivo XML. Assim sendo, o trabalho teve por objetivo criar uma ferramenta de apoio ao mapeamento e extração de esquemas relacionais especificados em arquivos XML, bem como a geração dos comandos SQL para criação das tabelas componentes do esquema físico do banco de dados. A finalidade do trabalho foi permitir um mapeamento flexível de esquemas relacionais representados em XML, ou seja, um método de mapeamento que seja executado diretamente sobre um arquivo XML. Uma possível solução para o problema (adotada no trabalho) é a utilização da linguagem XSLT, que tem como finalidade transformar documentos XML em outros documentos XML ou outros documentos texto [W3C99b], em substituição aos processadores de anotações propostos em outras ferramentas. XSLT pode ser utilizada tanto para realizar as transformações nos arquivos XML de entrada (segundo as regras de mapeamento definidas pelo usuário) em um arquivo XML semanticamente compreensível para a fase de geração do SQL de criação de tabelas, quanto na geração do script SQL, que é a saída da ferramenta. Tal solução evita a necessidade de construir um processador de anotações fixas (associadas a um esquema XML) e torna a ferramenta mais aberta, uma vez que XSLT já possui processadores disponíveis livremente, como é o caso dos projetos Saxon [SXO07] e Xalan [AXA07]. No intuito de facilitar, e ao mesmo tempo assegurar a corretude da tradução do esquema relacional para o comando SQL, a transformação do arquivo XML de entrada se dá em duas fases. O objetivo da primeira fase é gerar, a partir do arquivo de entrada, um arquivo XML em conformidade com um arquivo XML Schema que descreve a BNF [BNF96] do comando SQL Create Table. Na segunda fase, com base neste arquivo intermediário, é gerado o script SQL de criação das tabelas. Uma vez estando o arquivo XML intermediário de acordo com o arquivo XML Schema que descreve a BNF do comando SQL Create Table, garante se que a sintaxe do comando SQL resultante está correta. Tanto na primeira como na segunda fase, as transformações são especificadas utilizando a linguagem XSLT. 2
3 Fundamentação Teórica: BNF: A forma de Backus Naur (também conhecido como BNF, o formalismo de Backus Naur, forma normal Backus, ou forma de Panini Backus) é uma meta sintaxe usada para expressar gramáticas livres de contexto, isto é, um modo formal de descrever linguagens [BNF96]. A BNF é amplamente usada como notação para as gramáticas de linguagens de programação, conjuntos de instruções e protocolos de comunicação, e também como notação para representar partes de gramáticas de linguagens naturais. A maioria dos livrostexto para teoria de linguagem de programação e/ou semântica documenta linguagens em BNF. Uma especificação BNF é um conjunto de regras de derivação, escritas na forma: <simbolo> : = <expressão> onde <simbolo> é um não terminal e <expressão> consiste em sequências de símbolos e/ou sequências separadas pela barra vertical (' '), indicando uma escolha. Esta notação indica as possibilidades de substituição para o símbolo na esquerda da expressão. Símbolos que nunca aparecem no lado esquerdo são ditos terminais [BNF96]. XML: XML (extensible Markup Language) define um conjunto de regras (você também pode encará las como convenções ou diretrizes) para projetar formatos de texto que permitam estruturar seus dados [W3C99a]. XML não é uma linguagem de programação e você não precisa ser um programador para usá la ou aprendê la. XML torna simples para o computador gerar e ler dados, e garantir que sua estrutura não seja ambígua. Entretanto, enquanto HTML especifica o que cada marcador e atributo significam e geralmente como seu conteúdo aparece em um navegador, XML usa os marcadores apenas para delimitar conteúdos de dados, deixando a interpretação destes dados completamente à cargo da aplicação que os lê [W3C99a]. Programas que produzem planilhas, listas de endereços e outros dados estruturados, freqüentemente gravam estes dados em disco utilizando um formato binário ou textual. Uma vantagem do formato textual é que ele permite ao usuário ver os dados sem usar o programa que os produziu, ou seja, você pode ler um formato textual com o seu editor de textos favorito. Além disso, um documento textual XML não ocupa demasiado espaço, podendo ser facilmente transferido entre pessoas e aplicações [W3C99a]. Por estes motivos, cresce o numero de aplicativos que persistem seus dados em XML e um destes usos é justamente a persistência de esquemas relacionais, que é o foco deste trabalho. 3
4 XML Schema: XML Schema é um documento XML que descreve o esquema de um ou mais documentos XML [W3C99c]. O propósito de um documento XML Schema é definir a estrutura de um XML, possibilitando a validação de documentos de dados XML através de programas denominados parsers XML. Um documento XML Schema define basicamente: Os elementos que podem aparecer em um documento XML; Os atributos de elementos; A hierarquia permitida de elementos, ou seja, quais elementos são elementos filhos de outros; A ordem na qual os elementos filhos aparecem em uma hierarquia; A quantidade mínima e máxima de elementos filhos em uma hierarquia (cardinalidade); Se um elemento deve ser vazio ou pode incluir texto puro; Os tipos de dados dos elementos simples (que não possuem uma hierarquia de elementos); Os valores padrão e valores fixos para elementos e atributos. XSLT Extensible Stylesheet Transformations: XSLT é uma linguagem para transformar documentos XML em outros documentos XML ou documentos texto em outros formatos [W3C99b]. A XSLT está contida na XSL, que é a linguagem de folhas de estilo (stylesheets) para XML. Além da XSLT, a XSL inclui um vocabulário XML para especificar formatação. A XSL especifica a estilização de um documento XML, podendo utilizar a XSLT para descrever como o documento é transformado em outro documento XML que usa este vocabulário de estilização. Uma transformação expressa em XSLT descreve regras para transformar uma estrutura XML hierárquica fonte (árvore fonte) em uma árvore resultado. A transformação é obtida associando se padrões com gabaritos. Um padrão é confrontado com elementos na árvore fonte. Um gabarito é instanciado para criar parte da árvore resultado. A árvore resultado é gerada separadamente da árvore fonte, podendo ser completamente diferente da estrutura da árvore fonte. Na construção da árvore resultado, os elementos da árvore fonte podem ser filtrados e reordenados, com a possibilidade de adicionar ainda outras estruturas arbitrárias. 4
5 SQL DDL: SQL é uma linguagem que foi inicialmente concebida para a consulta a BDs relacionais [ISO03]. Atualmente, ela apresenta diversas funcionalidades no que diz respeito à definição e manipulação destes BDs. A SQL se divide em subconjuntos de comandos: Data Definition Language (DDL) (Linguagem de Definição de Dados). A SQL DDL fornece comandos para definição e modificação de esquemas de relação, remoção de relações e criação de índices. Os principais comandos que fazem parte da DDL são: CREATE, ALTER, DROP; Data Manipulation Language (DML) (Linguagem de Manipulação de Dados). A SQL DML inclui uma linguagem de consulta baseada na álgebra relacional e no cálculo relacional. Ela compreende também comandos para inserir, remover e modificar informações em um banco de dados. Os comandos básicos da DML são: SELECT, INSERT, UPDATE e DELETE; Data Control Language (Linguagem de Controle de Dados). Conjunto de comandos que faz o cadastramento de usuários e determina seu nível de privilégio para os objetos do BD. Os principais comandos são: GRANT e REVOKE; Transaction control (Controle de Transações). A SQL inclui comandos para especificação do início e fim das transações. Diversas implementações permitem o isolamento explícito de dados para o controle de concorrência. Os comandos principais são COMMIT, ROLLBACK e SAVEPOINT. SAX SAX (Simple API for XML) é um analisador baseado em eventos o analisador lê um fluxo de entrada XML e, no caso de eventos, o analisador chama métodos ou rotinas com nomes semelhantes no programa host, que poderão tomar a ação apropriada. SAX não é um padrão do W3C, mas o resultado de um desenvolvimento conjunto dos membros do grupo XML DEV [XDE07]. Há diversos analisadores SAX para diferentes linguagens de programação, como Java, C++, Perl e Delphi. DOM: DOM (Document Object Model) é uma interface de programação de aplicação completa para documentos XML [W3C99d]. Essa interface permite não apenas navegar dentro de documentos XML, mas também obter, acrescentar, modificar ou excluir elementos e conteúdo. Como já foi comentado anteriormente, dados XML são definidos através de elementos, que por sua vez podem ser compostos de outros elementos. Arquivos XML, por apresentarem este tipo de estrutura, podem ser representados em forma de uma arvore. Os métodos disponibilizados pelo DOM permitem manipular os nodos desta árvore. 5
6 Trabalhos Relacionados X Database: Este trabalho propõe um sistema chamado X Database. A base deste sistema é um arquivo XML Schema que descreve o esquema lógico dos dados a serem trocados. Inicialmente, o sistema analisa a sintaxe do XML Schema e gera a base de dados relacional. A partir daí, processa a decomposição em tuplas de tabelas de arquivos XML válidos de acordo com o XML Schema. De forma contrária, ele também realiza a composição de arquivos XML a partir de dados extraídos da base relacional, como pode ser visto na Figura 8 [VAR04]. ShreX: ShreX é um sistema para decomposição e carga de documentos XML em BDs relacionais. No ShreX, o mapeamento é definido por anotações em arquivos XML Schema que indicam quais elementos e atributos devem ser armazenados no BD relacional. O processador de anotações executa o parsing do arquivo XML Schema com as anotações, verifica a validade do mapeamento e cria o esquema relacional correspondente. Esta informação de mapeamento é guardada em um repositório de mapeamento [AME04]. Trabalho de Boshernitsan: O trabalho de Boshernitsan apresenta um formato de troca, baseado em XML, entre as ferramentas componentes de um framework denominado Harmonia [MAR00]. O formato de troca modela a representação de um programa no Harmonia através de uma árvore sintática. O parser é dado por uma especificação declarativa da gramática da linguagem. A arvore sintática produzida pelo parser é, na verdade, uma arvore de parsing cuja forma é ditada pela mesma especificação da gramática. O framework Harmonia usa duas técnicas para abstrair gramáticas: uma variante da notação EBNF para expressar seqüências e nãoterminais opcionais, e a tecnologia GLR de parsing que trata de forma transparente a ambigüidade, incluindo lookahead sintático ilimitado [MAR00]. 6
7 O Tradutor Proposto No trabalho foi proposto um tradutor de uma especificação XML de um esquema relacional em um conjunto de comandos SQL que permitissem a geração deste esquema em um SGBD relacional. Para tanto, ele recebe como entrada um arquivo XML cujo conteúdo é uma especificação de um esquema relacional e um arquivo XML Schema contendo o esquema do comando SQL Create Table. A gramática formal da XML é apresentada na especificação XML do W3C pelo uso de notação na forma estendida de Backus Naur, a EBNF (Extended Backus Naur Form) [BNF96]. Da mesma forma, o padrão SQL 92 também está especificado pelo uso da notação BNF pela Organização Internacional para Padronização (International Organization for Standardization ISO) no padrão ISO/IEC 9075:1992. Existem programas que transformam automaticamente um conjunto de regras BNF/EBNF em um parser, tornando a BNF/EBNF uma opção bastante eficiente para representação de sintaxe de linguagens. Além disto, a geração de código utilizando a definição formal da linguagem é a garantia de que o resultado final é uma expressão válida naquela linguagem. Por isso, utiliza se como ponto de partida para a geração do código SQL um arquivo XML Schema que contenha a definição do comando Create Table diretamente da especificação em BNF contida no padrão ISO/IEC 9075:1992 da ISO. Assim sendo, é necessário transformar o arquivo XML de entrada em um arquivo XML compatível com tal XML Schema. A partir deste novo arquivo compatível, a geração do código SQL se torna automática e totalmente livre de erros de sintaxe. 7
Um Tradutor de Esquemas Relacionais em XML para Esquemas SQL
Um Tradutor de Esquemas Relacionais em XML para Esquemas SQL Alisson Giovanni Rosa 1, Ronaldo dos Santos Mello 1 1 Departamento de Informática e Estatística Universidade Federal de Santa Catarina (UFSC)
Leia maisIntrodução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s
Introdução Contribuição do Capítulo 2: discutir modelos de dados definir conceitos de esquemas e instâncias descrever os tipos de interfaces e linguagens oferecidas por um SGBD mostrar o ambiente de programas
Leia maisLinguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José;
MySQL SQL (Structured Query Languagem ) Linguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José; Inicialmente - Sequel
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Conceitos Básicos Introdução Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
Leia maisBanco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 2. Prof. Leonardo Vasconcelos
Banco de Dados Parte 2 Prof. Leonardo Vasconcelos - Conceitos e Arquiteturas de SBD Modelos de dados: conjunto de conceitos que podem ser usados para descrever a estrutura de um banco de dados. Permitem
Leia maisedsoncs@gmail.com www.linkedin.com/in/edsonhu Agenda Banco de Dados Relacional Modelo Descritivo Modelo Conceitual Modelo Lógico Arquitetura Cliente/Servidor Componentes SQL Server Management Studio (SSMS)
Leia maisNo contexto informático. Requisitos
Nuno Melo e Castro Sistema Conjunto de itens interdependentes que interagem para realizar uma tarefa Um método ou conjunto de procedimentos que definem um comportamento Pode ser automatizado ou manual,
Leia maisUm Tradutor de Esquemas Relacionais em XML para Esquemas SQL
UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA CURSO DE SISTEMAS DE INFORMAÇÃO Um Tradutor de Esquemas Relacionais em XML para Esquemas SQL Aluno: Alisson
Leia maisUm Tradutor de Esquemas Relacionais em XML para Esquemas SQL
UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA CURSO DE SISTEMAS DE INFORMAÇÃO Um Tradutor de Esquemas Relacionais em XML para Esquemas SQL Aluno: Alisson
Leia maisSistemas de Banco de Dados
Sistemas de Banco de Dados Fundamentos em Bancos de Dados Relacionais Wladmir Cardoso Brandão www.wladmirbrandao.com Departamento de Ciência da Computação (DCC) Instituto de Ciências Exatas e Informática
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
Leia mais14/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan
Faculdade INED Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan 1 Unidade 2 Introdução a SQL 2 Leitura Obrigatória ELMASRI,
Leia maisBCD29008 Banco de dados
BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 21 de fevereiro de 2018 1/24 Apresentação
Leia mais[versão para impressão] Link original: comp=24763 Conhecendo o PL/SQL
www.devmedia.com.br [versão para impressão] Link original: http://www.devmedia.com.br/articles/viewcomp.asp? comp=24763 Conhecendo o PL/SQL Veja neste artigo o que é PL/SQL, quando utilizá-la e uma breve
Leia maisBanco de Dados I Introdução SQL
Banco de Dados I Introdução SQL Frederico Queiroga fredericoqueiroga@gmail.com https://sites.google.com/site/fredericoqueiroga/ Linguagem SQL Aspectos Gerais: Independência do fabricante: Está incorporada
Leia maisLINGUAGEM, TIPOS DE USUÁRIOS DE SGBD E MODELOS DE DADOS
Fundação Centro de Análise, Pesquisa e Inovação Tecnológica Instituto de Ensino Superior - FUCAPI LINGUAGEM, TIPOS DE USUÁRIOS DE SGBD E MODELOS DE DADOS Disciplina: Banco de Dados Prof: Márcio Palheta,
Leia maisUTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas
UTFPR - Universidade Tecnológica Federal do Paraná Processamento e otimização de consultas Leyza Baldo Dorini 04/Nov/2009 Programação da aula Introdução: processamento e otimização de consultas Etapas:
Leia maisS Q L Asserções, Visões e Técnicas de Programação. Daniel Bordignon Cassanelli Fernando Luiz Grando Pedro Patitucci Finamore
S Q L Asserções, Visões e Técnicas de Programação Daniel Bordignon Cassanelli Fernando Luiz Grando Pedro Patitucci Finamore Resumo Apresentaremos os seguintes tópicos: - Especificação de restrições genéricas
Leia maisModelagem Física e SQL
Programação em Banco de Dados - Parte 1 Modelagem Física e SQL Prof. Pablo Passos prof.pablo.passos@gmail.com SQL - Um modelo físico é gerado a partir de um modelo lógico já construído. A geração dos objetos
Leia maisBCD29008 Banco de dados
BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 31 de julho de 2017 1/24 Apresentação
Leia maisMatéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
Matéria Introdutória Banco de Dados Motivação Necessidade de armazenar grandes quantidades de dados Necessidade de acessar as informações de maneira eficiente e segura Evolução histórica: desenvolvimento
Leia maisDDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR
SQL Structured Query Language, ou Linguagem de Consulta Estruturada, foi desenvolvida pela IBM nos anos 70 para demonstrar a viabilidade do modelo relacional para bancos de dados. No final dos anos 80
Leia maisBCD29008 Banco de dados
BCD29008 Banco de dados Linguagem SQL Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 21 de agosto de 2017
Leia maisFERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS
FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS Acadêmico: Roger Anderson Schmidt Orientador : Marcel Hugo Supervisor : Ricardo de Freitas Becker Empresa
Leia maisBanco de Dados. Prof. Gleison Batista de Sousa Aula 01
Banco de Dados Prof. Gleison Batista de Sousa Aula 01 Objetivos da Disciplina Interpretar e analisar o resultado da modelagem de dados; Conhecer Sistemas Gerenciadores de Banco de Dados; Conhecer as principais
Leia maisBanco de Dados Modelo Relacional, Algebra Relacional, SQL
Banco de Dados Modelo Relacional, Algebra Relacional, SQL Fontes Karine Reis Ferreira karine@dpi.inpe.br Gilberto Câmara gilberto@dpi.inpe.br Gilberto Ribeiro de Queiroz gribeiro@dpi.inpe.br Marcos André
Leia maisAula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD
Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD Banco de Dados (BD) é o arquivo físico, em dispositivos periféricos, onde estão armazenados os dados de diversos sistemas, para
Leia maisLISTA DE EXERCÍCIOS TEORIA DE BANCO DE DADOS
LISTA DE EXERCÍCIOS TEORIA DE BANCO DE DADOS 1. Analise as afirmativas abaixo. I. Atributo = dado que é associado a cada ocorrência de uma entidade ou de um relacionamento. II. Relacionamento = conjunto
Leia maisO modelo relacional encontra-se padronizado pela indústria de informática. Ele é chamado de
Introdução O modelo relacional encontra-se padronizado pela indústria de informática. Ele é chamado de padrão SQL (Structured Query Language). O padrão SQL define precisamente uma interface SQL para a
Leia maisBanco de Dados. Banco de Dados
Banco de Dados Banco de Dados Data Warehouse: banco de dados contendo dados extraídos do ambiente de produção da empresa, que foram selecionados e depurados, tendo sido otimizados para processamento de
Leia maisSistemas da Informação. Banco de Dados I. Edson Thizon
Sistemas da Informação Banco de Dados I Edson Thizon (edson@esucri.com.br) 2008 Apresentação (mini-currículo) Formação Acadêmica Mestrando em Ciência da Computação (UFSC/ ) Créditos Concluídos. Bacharel
Leia maisUniversidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang
Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Introdução geovanegriesang@unisc.br Processadores de linguagem Linguagens de programação são notações para se descrever
Leia maisIntrodução a Banco de Dados Prof. Msc Denival A. dos Santos
Introdução a Banco de Dados Prof. Msc Denival A. dos Santos Dado Um dado sozinho, dissociado de um contexto, não expressa algo que traga qualquer certeza ou elimine dúvidas de qualquer natureza. No máximo,
Leia maisSISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD
Fundação Centro de Análise, Pesquisa e Inovação Tecnológica Instituto de Ensino Superior - FUCAPI SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD Disciplina: Banco de Dados Prof: Márcio Palheta, Esp
Leia maisManipulação de Dados com SQL
Manipulação de Dados com SQL Wendel Melo Faculdade de Computação Universidade Federal de Uberlândia www.facom.ufu.br/~wendelmelo Banco de Dados I manipulação de dados com SQL 2 Structured Query Language
Leia maisA & F Consultoria em Sistemas e Treinamentos 2014 af.tecnoserv@gmail.com. A linguagem SQL. Autor: Hélio de Almeida Fonte: Wikipédia
A linguagem SQL Autor: Hélio de Almeida Fonte: Wikipédia 1 Structure Query Language O SQL foi desenvolvido originalmente no início dos anos 70 nos laboratórios da IBM em San Jose, dentro do projeto System
Leia maisLINGUAGEM SQL Linguagem usada em SGBD para: Definir estrutura de dados; Modificar dados em um banco de dados; Especificar restrições de segurança; Rea
BANCO DE DADOS Prof. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@hotmail.com SQL A Structed Query Language foi desenvolvida em 1974 nos laboratório da IBM em San José na Califórnia,
Leia maisSistemas de Banco de Dados
Sistemas de Banco de Dados Everson Santos Araujo everson@por.com.br Conceitos Dado - Um fato que pode ser armazenado Banco de dados (BD) - Coleção de dados interrelacionados Sistema Gerenciador de Banco
Leia maisBanco de Dados. Aula 2 - Prof. Bruno Moreno 19/08/2011
Banco de Dados Aula 2 - Prof. Bruno Moreno 19/08/2011 Aula passada.. Apresentação do professor e disciplina Definição de Banco de Dados Sistema de BD vs Tradicional Principais características de BD Natureza
Leia maisInformática Parte 4 Prof. Márcio Hunecke
Escriturário Informática Parte 4 Prof. Márcio Hunecke Informática BANCO DE DADOS SQL (LINGUAGEM SQL (SQL2008) LINGUAGEM HIVEQL (HIVE 2.2.0)) Structured Query Language, ou Linguagem de Consulta Estruturada
Leia maisIntrodução à Programação
Introdução à Programação Linguagens de Programação: sintaxe e semântica de linguagens de programação e conceitos de linguagens interpretadas e compiladas Engenharia da Computação Professor: Críston Pereira
Leia maisBanco de Dados - Conceitos. Baseado no material da Profa. Vania Bogorny (UFSC)
Banco de Dados - Conceitos Baseado no material da Profa. Vania Bogorny (UFSC) 1 Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária reserva de hotel compra de passagens
Leia maisCaderno de Introdução Bases Dados
José Adriano Adriano@ipb.pt Página 1 Sumário 5. A Linguagem SQL 5.1 Comandos DDL 5.2 Comandos DML 5. A Linguagem SQL A linguagem SQL apresenta duas variantes, DDL Data Definition Language e DML Data Manupulation
Leia maisAULA 01 Bancos de Dados Relacionais Arquitetura Linguagem SQL Componentes: DDL, DML, DCL. Prof. Msc. Célio R. Castelano
AULA 01 Bancos de Dados Relacionais Arquitetura Linguagem SQL Componentes: DDL, DML, DCL Prof. Msc. Célio R. Castelano TÓPICOS Projeto de Bancos de Dados Relacionais Arquitetura Modelagem Conceitual Modelagem
Leia maisModelo Entidade-Relacionamento (E-R)
Modelo Entidade-Relacionamento (E-R) composto n lote n n n contrato_compra_venda n possui proprietário possui n associado cadastro n banco faz fronteira pertence n ruas n quadras n financiado empréstimo
Leia maisDisciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais
UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE CIÊNCIAS EXATAS E NATURAIS FACULDADE DE COMPUTAÇÃO CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof.
Leia mais6.1. Teste Baseado em Gramática e Outras Abordagens de Teste
6 Discussão Além das técnicas de teste usando modelos gramaticais, existem outras abordagens de teste funcional de sistemas que estão sendo estudadas pela comunidade científica. Algumas delas se dedicam
Leia maisBases de Dados. DDL Data Definition Language
Bases de Dados DDL Data Definition Language SQL SQL = Structured Query Language Foi originalmente criada pela IBM nos anos 70 como parte de um protótipo de sistema relacional Posteriormente foi implementada
Leia maisConceitos de Sistemas de Banco de Dados INE 5323
Conceitos de Sistemas de Banco de Dados INE 5323 Prof. Mario Dantas Introdução Por quê Sistemas de Banco de Dados Visão dos Dados Modelos de Dados Linguagem de Definição de Dados (DDL) Linguagem de Manipulação
Leia maisUERJ Oscar Luiz Monteiro de Farias 1. Bancos de Dados. Mestrado em Engenharia de Computação área de concentração Geomática
UERJ Oscar Luiz Monteiro de Farias 1 Bancos de Dados Mestrado em Engenharia de Computação área de concentração Geomática UERJ Oscar Luiz Monteiro de Farias 2 Conceitos de Sistemas de Banco de Dados e Arquitetura
Leia maisMATA60 BANCO DE DADOS Aula 5- Modelo Relacional. Prof. Daniela Barreiro Claro
MATA60 BANCO DE DADOS Aula 5- Modelo Relacional Prof. Daniela Barreiro Claro Agenda Histórico Modelo em Redes e Hierárquico Modelo Relacional Restrições de Integridade Chaves FORMAS - UFBA 2 de X Histórico
Leia maisPlanificação Anual. Departamento Expressões e Tecnologias
Modelo Dep-01 Planificação Anual Agrupamento de Escolas do Castêlo da Maia Departamento Expressões e Tecnologias Ano 12º Ano letivo 2013.2014 Disciplina Programação e Sistemas de Informação Turma G Professores:
Leia maisFaculdade 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 maisFaculdade 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 maisIntrodução. Bases de Dados (CC2005) Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto
(CC2005) Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto Eduardo R. B. Marques DCC/FCUP parcialmente adaptado de slides por Fernando Silva e Ricardo Rocha Alguns
Leia maisSintaxe e Semântica. George Darmiton da Cunha Cavalcanti.
Sintaxe e Semântica George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Tópicos Introdução O problema de descrever a sintaxe Métodos formais para descrever a sintaxe Gramáticas de atributos Descrevendo
Leia maisPython e sua sintaxe LNCC UFRJ
Python e sua sintaxe LNCC UFRJ Linguagens naturais e formais Linguagens naturais Linguagem formal Um conjunto finito e não-vazio cujos elementos são símbolos Qualquer cadeia finita de símbolos justapostos
Leia mais7 Conclusão e Trabalhos Futuros
Conclusão e Trabalhos Futuros 123 7 Conclusão e Trabalhos Futuros Esta dissertação apresenta a linguagem X-SMIL para autoria declarativa de documentos hipermídia. Nessa direção, o primeiro passo do trabalho
Leia maisFormas de Gerência de Dados XML
Bancos de Dados XML Formas de Gerência de Dados XML SGBDRs estendidos com suporte à XML adequados a dados XML fortemente estruturados ( documentos orientados a registros ) beira-mar104apto
Leia maisModelo para a representação de informações, utilizado por aplicações Web que trabalham com a tecnologia AJAX.
JSON Modelo para a representação de informações, utilizado por aplicações Web que trabalham com a tecnologia AJAX. 1. Introdução JSON (JavaScript Object Notation) é um modelo para armazenamento e transmissão
Leia maisA linguagem SQL
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 recebeu o nome de
Leia maisLinguagens de Programação Classificação
Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda
Leia maisMAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES DE BANCO DE DADOS RELACIONAIS
Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Sistemas de Informação RENATO SULZBACH MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES
Leia maisModelagem Física e SQL
Programação em Banco de Dados - Parte 1 Modelagem Física e SQL Prof. Pablo Passos prof.pablo.passos@gmail.com SQL - Um modelo físico é gerado a partir de um modelo lógico já construído. A geração dos objetos
Leia maisPage 1. Prof. Constantino Jacob
Tópicos Introdução à SQL Definição Tipos de Operações Instrução SELECT Sintaxe básica Operações relacionais de restrição, projeção e junção Instruções DML Delete, Update e Insert Instruções DDL Create
Leia maisINE5416 Paradigmas de Programação. Ricardo Azambuja Silveira INE CTC UFSC E Mail: URL:
INE5416 Paradigmas de Programação Ricardo Azambuja Silveira INE CTC UFSC E Mail: silveira@inf.ufsc.br URL: www.inf.ufsc.br/~silveira Conceitos Léxica estudo dos símbolos que compõem uma linguagem Sintaxe
Leia maisO que são Bancos de Dados?
SQL Básico Liojes de Oliveira Carneiro professor.liojes@gmail.com www.professor-liojes.blogspot.com O que são Bancos de Dados? É o software que armazena, organiza, controla, trata e distribui os dados
Leia maisA 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 maisCARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I E J
CURSO - TADS TURMA 2008.1 2 PERÍODO 4 MÓDULO AVALIAÇÃO MP3 DATA 18/12/2008 BANCO DE DADOS 2008/2 Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO
Leia mais2. Conceitos e Arquiteturas de um SGBD
Instituto de Ciências Exatas e Tecnológicas Campus Assis Curso: Ciência da Computação Disciplina: Banco de Dados Prof(a): Alexandre Serezani Título: Apostila 2 APOSTILA 2 2. Conceitos e Arquiteturas de
Leia maisBanco de Dados. Banco de Dados II. Característica fundamental de SGBDs. Abordagem SGBD x Processamento de Arquivos Tradicional
Banco de Dados Banco de Dados II Conceitos Básicos Coleção logicamente coerente de dados relacionados com algum significado inerente; Exemplos de bancos de dados: Agenda de endereços (papel ou computador)
Leia maisO TESTE DE DOCUMENTOS MUTANTES PARA REALIZAR UTILIZANDO ANÁLISE DE. Orientadora: Silvia Regina Vergilio XML SCHEMA. Ledyvânia Franzotte
UTILIZANDO ANÁLISE DE MUTANTES PARA REALIZAR O TESTE DE DOCUMENTOS XML SCHEMA Ledyvânia Franzotte Orientadora: Silvia Regina Vergilio Roteiro Introdução XML e Tecnologias XML, DTD, XML Schema e JDOM Testes
Leia maisAula 2 BD Introdução. Profa. Elaine Faria UFU
Aula 2 BD Introdução Profa. Elaine Faria UFU - 2017 Motivação A quantidade de informação disponível está crescendo exponencialmente Os dados e as informações tem um papel importante para as organizações
Leia mais5.1. Fluxo para geração do Roadmap
46 5 VelvetH-DB Os Sistemas Gerenciadores de Banco de Dados (SGBDs), foram criados com o intuito de permitir o armazenamento e manipulação de grandes volumes de dados, fornecendo uma aplicação que garanta,
Leia maisUnidade 5 05/11/2008. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Redes de Computadores
Faculdade INED Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Redes de Computadores Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan 1 Unidade 5 5.1 Conceitos do projeto físico.
Leia maisUniversidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores
Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores 2013-2 Compilador para a Linguagem Cafezinho Especificação dos trabalhos: T2 (Geração da Representação Intermediária e Análise
Leia maisBanco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas
Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar
Leia maisBANCO DE DADOS. Araújo Lima. Jan / Araújo
BANCO DE DADOS Lima Jan / 2017 1 Índice 1.Introdução a Sistemas de Banco de Dados Evolução dos Sistemas de Informação Conceitos de Bancos de Dados Usuários de Banco de Dados Banco de Dados X Linguagens
Leia maisLinguagens Formais e Autômatos
Linguagens Formais e Autômatos Gramáticas Livre do Contexto (GLC) Cristiano Lehrer, M.Sc. Linguagens Livres do Contexto (1/2) Seu estudo é de fundamental importância na informática: Compreende um universo
Leia maisBanco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP
Banco de dados POO Márcio Delamaro 1/37 Objetivo Nesta aula vamos dar uma breve introdução do que é um Banco de dados relacional Como acessar um banco de dados usando Java 2/37 O que é Bancos de dados
Leia maisDDL). O resultado da compilação dos parâmetros DDLs é
Banco Dados Aula 2 Linguagens de Banco de Dados e Tipos de Usuários 1. Linguagens de Banco de Dados Um sistema de banco de dados proporciona dois tipos de linguagens: uma específica para os esquemas do
Leia maisBANCO DE DADOS WEB AULA 9. concessão e revogação de privilégios. professor Luciano Roberto Rocha.
BANCO DE DADOS WEB AULA 9 concessão e revogação de privilégios professor Luciano Roberto Rocha www.lrocha.com O que são privilégios Quem cria o objeto no banco de dados se torna o seu dono. Por padrão,
Leia maisBanco de Dados. Professor: Marcelo Machado Cunha IFS Campus Aracaju
Banco de Dados Professor: Marcelo Machado Cunha IFS Campus Aracaju Definição Banco de Dados Conjunto de dados interrelacionados que objetivam atender as necessidades de um conjunto de usuários. Inglês:
Leia maisProgramação de Computadores I Introdução PROFESSORA CINTIA CAETANO
Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO Introdução Resolução de problemas Encontrar uma maneira de descrever este problema de uma forma clara e precisa. Encontremos uma seqüência
Leia maisProgramação I Apresentação
Programação I Apresentação Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Referências JUNIOR, D. P.; NAKAMITI, G. S.; ENGELBRECHT, A. de M. E.; BIANCHI, F. Algoritmos e Programação
Leia maisBANCOS DE DADOS. CREATE TABLE um registro (formalmente uma tupla) a uma tabela existente. Insert into Pessoa (id, nome, sexo) value;
Subconjuntos do SQL A linguagem SQL é dividida em subconjuntos de acordo com as operações que queremos efetuar sobre um banco de dados, tais como: DML - Linguagem de Manipulação de Dados O primeiro grupo
Leia maisUm Compilador Simples. Definição de uma Linguagem. Estrutura de Vanguarda. Gramática Livre de Contexto. Exemplo 1
Definição de uma Linguagem Linguagem= sintaxe + semântica Especificação da sintaxe: gramática livre de contexto, BNF (Backus-Naur Form) Especificação Semântica: informal (textual), operacional, denotacional,
Leia mais3 Tecnologias Relacionadas
Tecnologias Relacionadas 31 3 Tecnologias Relacionadas O objetivo deste capítulo é apresentar um resumo de cada tecnologia relacionada ao processo proposto nesta dissertação, mostrando suas principais
Leia mais15 - Introdução às Bases de Dados
ICE-B 15 - Introdução às Bases de Dados Ludwig Krippahl Bases de Dados Resumo Introdução aos sistemas de bases de dados: Modelo relacional SQL (Structured Query Language) Criar tabelas Inserir dados Consultar
Leia maisUNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIENCIAS DA COMPUTAÇÃO
UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIENCIAS DA COMPUTAÇÃO FERRAMENTA DE APOIO AO MAPEAMENTO DE MODELO TEMPORAL DE DADOS PARA UM SGBD RELACIONAL ACADEMICO:MARCOS
Leia maisAula 01 Conceito de Banco de Dados e SGBD
Aula 01 Conceito de Banco de Dados e SGBD Dado: conjunto de símbolos arranjados a fim de representar a informação fora da mente humana. Elemento de Dado: subconjunto de símbolos que compõem um dado com
Leia maisDEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS - Grupo 550 INFORMÁTICA Planificação Anual /Critérios de avaliação
DOMÍNIOS (Módulos) Módulo 8 - Conceitos Avançados de Módulo 9 - Introdução à Conteúdos Vantagens de um sistema operativo gráfico; Conceito de janela; Conceitos acerca da interface com o utilizador; por
Leia maisE-Portefólio da especificação ao processamento digital
E-Portefólio da especificação ao processamento digital José Carlos Ramalho jcr@di.uminho.pt http://www.di.uminho.pt/~jcr Contexto Processamento Estruturado de Documentos Disciplina do 5º ano da LESI e
Leia maisRui Carneiro, Rui Pereira, Tiago Orfão
Geração de Gráficos SVG através de PHP Rui Carneiro, Rui Pereira, Tiago Orfão Faculdade de Engenharia da Universidade do Porto, R. Dr. Roberto Frias, 4200-465 Porto. {ei04073,ei04077,ei03102}@fe.up.pt
Leia maisPara criarmos um banco de dados no MySql, utilizamos à instrução:
Databases Os objetos que fazem parte de um sistema de banco de dados são criados dentro de um database, uma estrutura lógica responsável por manter a estrutura de tabelas com seus dados. Para criarmos
Leia maisComo construir um compilador utilizando ferramentas Java
Como construir um compilador utilizando ferramentas Java p. 1/2 Como construir um compilador utilizando ferramentas Java Aula 1 - Introdução Prof. Márcio Delamaro delamaro@icmc.usp.br Como construir um
Leia mais1/26/2009. Metamodelo MMA. Metamodelo MMB. Modelo A2. Modelo A. Modelo B. Transformação M2M
Abstrações do mundo real Sistema e seu ambiente Com um propósito específico Simulação, geração de código No MDD Quem lê e entende o modelo é o computador Uma vez que o computador entenda o modelo... O
Leia mais