Tel: Instituto Superior Técnico, Av. Rovisco Pais, Lisboa, Portugal

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

Download "pfilipe@isel.pt, Tel: +351.1.8317211 2 Instituto Superior Técnico, Av. Rovisco Pais, 1049-001 Lisboa, Portugal"

Transcrição

1 Algoritmo de Tradução de Interrogações Lógicas para SQL Porfírio P. Filipe 1, Nuno J. Mamede 2 1 Inst. Sup. de Eng. de Lisboa, R. Conselheiro Emídio Navarro, Lisboa, Portugal pfilipe@isel.pt, Tel: Instituto Superior Técnico, Av. Rovisco Pais, Lisboa, Portugal nuno.mamede@acm.org, Tel: ARQUITECTURA DO SISTEMA A arquitectura do sistema de interrogações em língua natural representada na Figura 1 é baseada numa linguagem de representação intermédia, designada por linguagem de interrogação lógica (LIL), para a qual a pergunta em língua natural é transformada antes de ser realizada a tradução para uma interrogação SQL. A linguagem LIL expressa o significado da pergunta em conceitos de alto nível, independentes da estrutura da base de dados do domínio [1][2]. A arquitectura do sistema pode ser dividida em dois módulos. O primeiro módulo processa a língua natural (componente linguística), onde a pergunta é submetida à análise morfológica, sintáctica e semântica sendo obtidas como resultado uma ou mais interrogações LIL que correspondem às possíveis interpretações da pergunta formulada em língua natural. Face á dimensão do domínio e à flexibilidade da língua natural é normal existirem várias interpretações para a mesma pergunta. Sistema de Interrogações Edite Modelo Conceptual Hierarquia de Tipos Representação Geral Apoio à Tradução Descoberta do Contexto da Pergunta Dados de Apoio á Tradução LIL/SQL Acesso Via ODBC Base de Dados do Domínio Consulta Pergunta em Língua Natural Português, Francês, Inglês,... Análise Morfológica Informação Sobre Palavras Análise Sintáctica Estrutura Sintáctica (árvore sintáctica) Análise Semântica Interrogação Lógica (linguagem LIL) Tradução LIL/SQL Interrogação SQL (SELECT) SGBD Resposta Interpretação da Resposta Figura 1 - Arquitectura do Sistema de Interrogações O segundo módulo está relacionado com o processamento dependente da estrutura da base de dados do domínio, traduzindo as interrogações LIL para interrogações SQL que são passadas ao sistema de gestão da base de dados do domínio com o objectivo de obter dados para produzir as respostas. A principal vantagem desta arquitectura é a separação completa entre a componente linguística e o conhecimento dependente da base de dados do domínio. A portabilidade do sistema de interrogações para outro domínio (outra base de dados do domínio) é garantida pelo preenchimento adequado do modelo conceptual. O processamento da pergunta em língua natural é feito por etapas: a partir da língua natural é gerada uma árvore sintáctica que permite a construção de uma interrogação lógica sendo esta finalmente transformada, aplicando o algoritmo de tradução de uma interrogação lógica para SQL, numa instrução SELECT. A comunicação com o sistema de gestão da base de dados do domínio é independente da realização prática porque é executada através de um driver ODBC. O modelo conceptual é a componente do sistema de interrogações que representa simbolicamente os constrangimentos conceptuais associados ao domínio da aplicação [4]. O modelo conceptual tem três componentes: (i) uma hierarquia de tipos que contém a informação sobre a herança; (ii) uma representação geral que é uma representação explícita dos constrangimentos conceptuais do domínio e (iii) dados de apoio à tradução LIL/SQL. Durante a análise semântica é seleccionada uma interpretação da pergunta que respeite os constrangimentos conceptuais do domínio. Por exemplo, se for perguntado ao sistema de interrogações: Quais os hotéis com piscina com água salgada? existem duas interpretações possíveis. Pode ser interpretado que água salgada se refere ao hotel ou que se refere à piscina. São executadas duas consultas ao modelo conceptual e a consulta que pergunta se a entidade hotel tem a propriedade água salgada vai falhar. O facto hotel tem água salgada é irrelevante e por isso não é representado no modelo conceptual. Quando uma pergunta não tem pelo menos uma interpretação que respeita os constrangimentos conceptuais do domínio, diz-se que está semanticamente incorrecta. A LINGUAGEM FONTE A linguagem LIL é inspirada no formalismo apresentado no projecto de MASQUE/SQL [2] e foi descrita em [6][7][8]. A sintaxe da linguagem LIL é a de uma lógica de primeira ordem com o poder expressivo de uma lógica de predicados que permite representar, de uma forma bastante intuitiva, os conceitos do mundo real:

2 (a) Um termo pode ser uma constante uma variável ou um símbolo de função aplicado a um tuplo de termos. As constantes representam objectos do mundo, incluindo objectos abstractos como eventos e situações. Exemplos de constantes: Ritz, sauna, -5 e Exemplos de variáveis: _3 e X. (b) Uma fórmula primitiva é constituída por um símbolo de predicado (que se escreve como um termo) e por um ou dois argumentos (termos). Uma fórmula primitiva tem a seguinte sintaxe: simbolo_de_predicado(termo 1 [, termo 2 ]) São exemplos de fórmulas primitivas: hotel(x) e ter(x, sauna) (c) Uma expressão LIL é um conjunto de fórmulas LIL separadas por vírgulas e tem a seguinte sintaxe: fórmula 1,, fórmula n É exemplo de uma expressão LIL: autor(x), ter(x, livro) (d) Um conectivo lógico liga duas fórmulas LIL originando outra fórmula. A conjunção (&) com a seguinte sintaxe: &(prd 1 (trm1,trm 2 ),,prd n (trm n1,trm n2 )) A disjunção (V) com a seguinte sintaxe: V(prd 1 (trm 1,trm 2 ),,prd n (trm n1,trm n2 )) São exemplos de utilização de conectivos lógicos: &(ter(x, restaurante), ter(x, sauna)) V(ter(X, livro), ter(x, disco)) (e) Fórmulas predefinidas na linguagem LIL: EXACT(termo 1, termo cte ) (igual) SUP(termo 1, termo cte ) (maior) INF(termo 1, termo cte ) (menor) TRADUÇÃO Estrutura de Dados Auxiliar Os dados de apoio à tradução da linguagem LIL para SQL dependentes da estrutura da base de dados do domínio são representados na Figura 2 (a sombreado) como uma extensão do modelo conceptual. A notação usada na Figura 2 é o IDEF1X (Integration DEFinition for Information Modeling). definidas cinco funções para explorar a estrutura de dados auxiliar que devolvem uma cadeia de caracteres. Função TRANSLATION(X,Y,Z) Todos os argumentos são símbolos. O primeiro argumento refere uma associação, o segundo uma entidade e o terceiro uma entidade, uma propriedade, um valor de propriedade, ou um nome próprio. O caracter _ pode ser usado para expressar o conceito qualquer símbolo. Esta função devolve a tradução do facto (parte da pergunta) especificado nos argumentos. Função CLASS(X) Usando a coluna CLASSIFICATION.DESG_CLASS, esta função indica se o argumento, um símbolo, é representado por uma tabela Table ou por uma coluna Column na base de dados do domínio. Função DEFAULT(X) Esta função é usada para determinar as propriedades omitidas ou entidades omitidas dependendo do tipo do argumento indicado: Se o argumento é uma propriedade devolve a entidade omitida associada a essa propriedade. Se o argumento é uma entidade devolve a propriedade omitida associada a essa entidade. Esta função devolve o símbolo representado na coluna DEFAULT.SYMBOL2 quando o seu argumento figurar na coluna DEFAULT.SYMBOL1. Função EQUIVALENT(X) O argumento desta função pode ser um símbolo de propriedade ou de entidade retornando a expressão que foi usada na definição desse argumento. Se na definição do argumento figurar um símbolo de função é devolvido o nome da função existente na coluna CLASSIFICATION.DESC_CLASS e os argumentos presentes na tabela EQ_SYMBOL, caso contrário é devolvido o próprio argumento. Função FORMATTER(X) O argumento desta função refere uma propriedade e devolve o nome de uma função. A função identificada nesta consulta deve ser utilizada para apresentar ao utilizador os dados associados à propriedade indicada em argumento de forma adequada. O ALGORITMO DE TRADUÇÃO Figura 2 Modelo Relacional da Estrutura de Dados Funções Auxiliares Para definir o acesso aos dados de apoio ao algoritmo de tradução LIL/SQL sobre como cada conceito é representado na base de dados do domínio foram O algoritmo de tradução da linguagem LIL para SQL assume que a instrução SELECT é obtida concatenando traduções parciais de cada fórmula LIL que figuram na interrogação LIL. As fórmulas LIL com um argumento variável identificam propriedades ou entidades que a resposta deve contemplar. A tradução de fórmulas LIL com um argumento originam elementos da cláusula SELECT ou FROM, enquanto as restantes fórmulas definem a cláusula FROM ou WHERE, isto é, as condições às quais a resposta deve satisfazer.

3 Depois de traduzir todas as fórmulas pertencentes à interrogação LIL, é necessário verificar se a cláusula FROM contém todas as tabelas referidas na cláusula SELECT e na cláusula WHERE. As tabelas em falta devem ser acrescentadas na cláusula FROM separadas por vírgula. Uma operação semelhante deve ser realizada para identificar colunas em falta que pertencem a tabelas que não têm explicitada nenhuma coluna em toda a instrução SELECT. O processo de tradução usa oito regras: uma para substituir variáveis pelo seu tipo, duas para traduzir fórmulas primitivas, uma para traduzir fórmulas que tenham conectivos lógicos, uma para traduzir fórmulas predefinidas, duas para garantir que a instrução SQL está completa e ainda outra para definir a formatação do resultado. Regra 1 Substituição de Variáreis Durante o processo de tradução é assumido que as variáveis são substituídas pelos seus tipos, isto é, pelos nomes das classes a que pertencem. A expressão LIL: prd 1 (X 1 ), prd 2 (X 1,trm 2 ), depois de ser aplicada a substituição X 1 /prd 1 (assumindo que prd 1 é o tipo da variável X 1 ), é transformada em prd 2 (prd 1,trm 2 ). Quando a substituição ocorre referese o tipo de X 1 como X 1cte. Regra 2 Fórmulas Primitivas Unárias A tradução de uma fórmula primitiva com um argumento (prd(trm)) identifica uma tabela ou uma expressão que envolve colunas. Existem duas possibilidades, dependendo do valor retornado pela função CLASS(prd): (a) Se o valor retornado é Table, então o valor retornado pela função EQUIVALENT(prd) é concatenado, com uma vírgula, à cláusula FROM. Se trm é constante (um nome próprio), então a expressão retornada pela função TRANSLATION(_,pred,trm) é concatenada, com o operador AND, à cláusula WHERE; (b) Se o valor retornado é Column, então Se a interrogação LIL contém uma fórmula do tipo prd 2 (trm 2,prd), então Se trm é constante (valor de uma propriedade), então a expressão retornada pela função TRANSLATION(prd 2,trm 2cte,prd(trm)) é concatenada, com o operador AND, à cláusula WHERE; Se trm é variável, então Se o valor retornado pela função EQUIVALENT(prd) contém um símbolo de função, então o valor retornado pela função EQUIVALENT(prd) é concatenado, com uma vírgula, à cláusula SELECT. Senão o valor retornado pela avaliação de EQUIVALENT(trm 2cte ).EQUIVALENT(prd) é concatenado, com uma vírgula, à cláusula SELECT. Se a interrogação LIL não contém uma fórmula do tipo pred 2 (trm 2,prd), então Se o valor retornado pela função EQUIVALENT(prd) contém um símbolo de função, então o valor retornado pela avaliação de EQUIVALENT(prd) é concatenado, com uma vírgula, à cláusula SELECT. Senão o valor retornado pela avaliação de DEFAULT(prd).EQUIVALENT(prd) é concatenado, com uma vírgula, à cláusula SELECT. Regra 3 Fórmulas Primitivas Binárias A tradução de uma fórmula primitiva com dois argumentos (prd(trm 1,term 2 )) é a expressão retornada pela função TRANSLATION(prd,trm 1cte, trm 2cte ), que deve ser concatenada, com o operador AND, à cláusula WHERE. Regra 4 Fórmulas com Conectivas Lógicas A tradução de uma fórmula que usa o conectivo e (&(prd 1 (trm 2, trm 3 ),..., prd a (trm b, trm c ))) é a expressão retornada pela avaliação de TRANSLATION(prd 1cte, trm 2cte, trm 3cte ) AND... AND TRANSLATION(prd acte, trm bcte, trm cct ), que deve ser concatenada, com o operador AND, à cláusula WHERE. A tradução de uma fórmula que usa o conectivo ou (V(prd 1 (trm 2,trm 3 ),...,prd a (trm b,trm c ))) é a expressão retornada pela avaliação de (TRANSLATION(prd 1cte,trm 2cte,trm 3cte ) OR... OR TRANSLATION(prd acte,trm bcte, trm ccte )), que deve ser concatenada, com o operador AND, à cláusula WHERE. Regra 5 Fórmulas Predefinidas A tradução de uma fórmula com o predicado EXACT (EXACT(trm, cte)) é concatenada, com o operador AND, à cláusula WHERE e é determinada por: (a) Se a interrogação LIL contém uma fórmula do tipo prd 2 (trm 2,trm), então TRANSLATION(prd 2, trm 2cte, EXACT(trm, cte)) (b) Senão DEFAULT(trm cte ).EQUIVALENT(trm cte )=cte A tradução de uma fórmula com o predicado SUP (SUP(trm, cte)) é concatenada, com o operador AND, à cláusula WHERE e é determinada por: (a) Se a interrogação LIL contém uma fórmula do tipo prd 2 (trm 2,trm), então TRANSLATION(prd 2, trm 2cte, SUP(trm, cte)) (b) Senão

4 DEFAULT(trm cte ).EQUIVALENT(trm cte )>cte A tradução de uma fórmula com o predicado INF (INF(trm,cte)) é concatenada, com o operador AND, à cláusula WHERE e é determinada por: (a) Se a interrogação LIL contém uma fórmula do tipo prd 2 (trm 2,trm), então TRANSLATION(prd 2, trm 2cte, INF(trm, cte)) (b) Senão DEFAULT(trm cte ).EQUIVALENT(trm cte )<cte Regra 6 Tabelas em Falta Se a cláusula FROM não contém todas as tabelas referenciadas na cláusula SELECT e WHERE, então todas as tabelas em falta devem ser concatenadas, com uma vírgula, à cláusula FROM. Regra 7 Colunas em Falta Procurar as tabelas que são referenciadas na interrogação LIL em fórmulas com um argumento variável e que não têm colunas na cláusula SELECT. Para cada uma das tabelas encontradas (designadas por T) deve ser concatenado, com uma vírgula, à cláusula SELECT o valor retornado pela avaliação de EQUIVALENT(T).DEFAULT(T). Figura 3 Modelo Relacional da BD do Domínio O caracter? é usado para representar uma cláusula vazia da instrução SELECT. Interrogação em língua natural: Quais os nomes dos alunos com notas superiores a 15 valores que efectuaram o exame da disciplina de Física? Regra 8 Formatação Opcional Aplicar a função FORMATTER a cada coluna (ou expressão que envolve funções de equivalência) da cláusula SELECT para obter o formato final de cada propriedade. Algoritmo Iniciar com uma instrução SELECT vazia Para cada fórmula LIL fazer Inicio Tentar aplicar a Regra 1 Escolher a Regra apropriada do conjunto {2,3,4,5} Aplicar a regra escolhida Fim Tentar aplicar a Regra 6 e a Regra 7 Aplicar a Regra 8 EXEMPLO Para demonstrar a aplicação do algoritmo de tradução LIL/SQL apresenta-se o seguinte exemplo comentado, assumindo que na base de dados do domínio o extracto do modelo relacional significativo para o exemplo está conforme o representado na Figura 3.

5 Interrogação na linguagem LIL: nome(x), ter(aluno, nome),ter(aluno, nota), SUP(nota,15), efectuar(aluno, exame), ter(exame, disciplina), disciplina(fisica) Aplicação do algoritmo de Tradução LIL/SQL: 1) Interrogação SQL: SELECT? FROM? Tradução de: nome(x), usando a Regra 2: A chamada à função CLASS(nome) retorna Column e existe na interrogação LIL a fórmula ter(aluno, nome) À cláusula SELECT é concatenado o valor obtido pela avaliação da expressão: EQUIVALENT(ALUNO).EQUIVALENT(NOME), que é ALUNO.NOME 2) Interrogação SQL: SELECT ALUNO.NOME FROM? Tradução de: ter(aluno, nome), usando a Regra 3: TRANSLATION(TER, ALUNO, NOME), que é 3) Interrogação SQL: (sem alterações). Tradução de: ter(aluno, nota), usando a Regra 3: TRANSLATION(TER, ALUNO, NOTA), que é ALUNO.NUMERO = EXAME.NUMERO 4) Interrogação SQL: SELECT ALUNO.NOME FROM? WHERE ALUNO.NUMERO = EXAME.NUMERO Tradução de: SUP(nota, 15), usando a Regra 5: Existe na interrogação LIL a fórmula ter(aluno, nota) pela avaliação da expressão: TRANSLATION(TER, ALUNO, SUP(NOTA, 15)), que é EXAME.NOTA > 15 5) Interrogação SQL: SELECT ALUNO.NOME FROM? WHERE ALUNO.NUMERO = EXAME.NUMERO AND ALUNO.NOTA>15 Tradução de: efectuar(aluno, exame), usando a Regra 3: TRANSLATION(EFECTUAR, ALUNO, EXAME), que é ALUNO.NUMERO = EXAME.NUMERO 6) Interrogação SQL: (sem alterações), devido à expressão determinada já existir na cláusula WHERE. Tradução de: ter(exame, disciplina), usando a Regra 3: TRANSLATION(TER, EXAME, DISCIPLINA), que é EXAME.C_DISCIPLINA = DISCIPLINA.C_DISCIPLINA 7) Interrogação SQL: SELECT ALUNO.NOME FROM? WHERE ALUNO.NUMERO = EXAME.NUMERO AND ALUNO.NOTA>15 AND EXAME.C_DISCIPLINA = DISCIPLINA.C_DISCIPLINA Tradução de: disciplina(fisica), usando a Regra 2: A chamada à função CLASS(disciplina) retorna Column e existe na interrogação LIL a fórmula ter(exame, disciplina) TRANSLATION(TER, EXAME, DISCIPLINA(FISICA)), que é DISCIPLINA.D_DISCIPLINA = FISICA 8) Interrogação SQL: SELECT ALUNO.NOME FROM? WHERE ALUNO.NUMERO = EXAME.NUMERO AND ALUNO.NOTA>15 AND EXAME.C_DISCIPLINA = DISCIPLINA.C_DISCIPLINA AND DISCIPLINA.D_DISCIPLINA = FISICA Aplicando a Regra 6 é concatenada, com uma vírgula, à cláusula FROM ALUNO, EXAME, DISCIPLINA. 9) Interrogação SQL resultado da aplicação do algoritmo: SELECT ALUNO.NOME FROM ALUNO, EXAME, DISCIPLINA WHERE ALUNO.NUMERO = EXAME.NUMERO AND ALUNO.NOTA>15 AND EXAME.C_DISCIPLINA = DISCIPLINA.C_DISCIPLINA AND DISCIPLINA.D_DISCIPLINA = FISICA Aplicando a função FORMATTER à coluna NOME da cláusula SELECT, obtém-se informação complementar à tradução. Neste exemplo, a função FORMATTER retorna Nome_Próprio, servindo esta palavra chave para identificar o formato dos nomes próprios. CONCLUSÃO O algoritmo apresentado é independente da base de dados e do domínio considerado [5]. Foi implementado como um módulo do Edite que é um sistema de interrogações em língua natural (português, francês, inglês, e espanhol) concebido para aceder a dados existentes numa base de dados relacional. O objectivo principal do Edite é proporcionar aos utilizadores a capacidade de obter informação armazenada numa base de dados relacional [3]. O utilizador não é obrigado a aprender uma linguagem de comunicação

6 artificial sendo-lhe facilitada a possibilidade de formular perguntas na sua língua nativa. O Edite responde a perguntas escritas sobre recursos turísticos transformando as questões colocadas em interrogações SQL. As respostas dependem do tipo de pergunta podendo ser: listas nominais de recursos, texto, imagens, ou gráficos. Actualmente, a base de dados do domínio contém recursos turísticos organizados em 253 tipos distintos preenchendo 209 tabelas. REFERÊNCIAS [1] Androutsopoulos I., Ritchie G., Thanisch P., An Efficient and Portable Natural Language Query Interface for Relational Databases, Proceedings of the 6th International Conference on Industrial & Engineering Applications of Artificial Intelligence and Expert Systems, Edinburgh, U.K. Gordon and Breach Publishers Inc., Langhorne, PA, U.S.A., pages , [2] Androutsopoulos I., Interfacing a Natural Language Front-End to a Relational Database (MSc thesis). Technical paper 11, Dept. of AI, Univ. of Edinburgh, [3] Androutsopoulos I., Natural Language Interfaces - An Introduction. Journal of Natural Language Engineering, Cambridge University Press, [4] Filipe P., Sistema de Interrogações em Língua Natural para Bases de Dados: Modelo Conceptual, Aquisição de Vocabulário e Tradução, M.Sc. Dissertation. Instituto Superior Técnico, Universidade Técnica de Lisboa, [5] Grosz B. J., Appelt D. E., Martin P. A., Pereira C. N., TEAM: An Experiment in the Design of Transportable Natural-Language Interfaces. Artificial Intelligence 32, pages Elsevier Science Publishers B.V. (North- Holland), [6] Marques L., Edite - Um Sistema de Acesso a Base de Dados em Língua Natural Análise Morfológica, Sintáctica e Semântica,.M.Sc. Dissertation. Instituto Superior Técnico, Universidade Técnica de Lisboa, [7]. Reis P., Mamede N. LIL-SQL. Processamento de Interrogações LIL por Tradução para SQL. Technical Report. Grupo de Sistemas e Serviços Telemáticos, INESC, [8]. Reis P., Mamede N., Matias J., Edite A Natural Language Interface to Databases: a New Dimension for an Old Approach in Proceeding of the Fourth International Conference on Information and Communication Technology in Tourism, ENTER 97, Edinburgh, Scottland, 1997.

Tarefa Orientada 11 Junção Interna

Tarefa Orientada 11 Junção Interna Tarefa Orientada 11 Junção Interna Objectivos: Junção Interna (INNER JOIN) Junção Interna A operação de junção interna (INNER JOIN) é utilizada para combinar colunas de duas ou mais tabelas. O resultado

Leia mais

Tarefa Orientada 12 Junção Externa, Auto-Junção e União

Tarefa Orientada 12 Junção Externa, Auto-Junção e União Tarefa Orientada 12 Junção Externa, Auto-Junção e União Objectivos: Junção externa (Outer JOIN) Junção externa à esquerda (LEFT Outer JOIN) Junção externa à direita (RIGHT Outer JOIN) Junção externa completa

Leia mais

Tarefa Orientada 13 Agrupamento e sumário de dados

Tarefa Orientada 13 Agrupamento e sumário de dados Tarefa Orientada 13 Agrupamento e sumário de dados Objectivos: Funções de agregação Agrupamento e sumário de dados Funções de agregação Nesta tarefa orientada iremos formular consultas que sumariam os

Leia mais

Tarefa Orientada 10 Obter informação a partir de uma tabela

Tarefa Orientada 10 Obter informação a partir de uma tabela Tarefa Orientada 10 Obter informação a partir de uma tabela Objectivos: Consultar dados de uma tabela Utilizar operadores aritméticos, relacionais, lógicos, de concatenação de cadeias de caracteres, LIKE

Leia mais

Tarefa Orientada 14 Subconsultas

Tarefa Orientada 14 Subconsultas Tarefa Orientada 14 Subconsultas Objectivos: Subconsultas não correlacionadas Operadores ALL, SOME e ANY Subconsultas correlacionadas Operador EXISTS Subconsultas incluídas na cláusula FROM de uma consulta

Leia mais

Edite - Um sistema de Acesso a Base de Dados em Língua Natural

Edite - Um sistema de Acesso a Base de Dados em Língua Natural Edite - Um sistema de Acesso a Base de Dados em Língua Natural Maria Luísa Torres Ribeiro Marques da Silva Coheur (Tese de mestrado defendida em Maio de 1997) 1 Motivação Direcção Geral de Turismo Inventário

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

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

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto LEIC-A, LEIC-T, LETI, MEIC-T, MEIC-A Engenharia de Software e Sistemas Distribuídos 2 o Semestre 2014/2015 Enunciado Geral do Projecto O que se segue é uma descrição geral do domínio do projecto a desenvolver

Leia mais

Desenvolvimento de uma base de dados. Relação. Modelo lógico: SGBD relacional

Desenvolvimento de uma base de dados. Relação. Modelo lógico: SGBD relacional Desenvolvimento de uma base de dados Realidade Bases de dados relacionais e SQL Conceitos básicos de bases de dados relacionais A 3ª forma normal Structured Query Language (SQL) Modelo conceptual (e.g.

Leia mais

Tarefa Orientada 2 Criar uma base de dados

Tarefa Orientada 2 Criar uma base de dados Tarefa Orientada 2 Criar uma base de dados Objectivos: Criar uma base de dados vazia. O Sistema de Gestão de Bases de Dados MS Access Criar uma base dados vazia O Access é um Sistema de Gestão de Bases

Leia mais

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

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

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO CONCEITOS BÁSICOS 1 Necessidade das base de dados Permite guardar dados dos mais variados tipos; Permite

Leia mais

8VDQGR5HSRUW0DQDJHUFRP&ODULRQH3RVWJUH64/ -XOLR&HVDU3HGURVR 8VDQGRSDUkPHWURV

8VDQGR5HSRUW0DQDJHUFRP&ODULRQH3RVWJUH64/ -XOLR&HVDU3HGURVR 8VDQGRSDUkPHWURV 8VDQGRSDUkPHWURV O envio de parâmetros para um relatório é uma das funções mais úteis do Report Manager, com eles você pode: Permitir que o usuário final altere palavras ou sentenças de um relatório; Atribuir

Leia mais

Módulo III. Folhas de Cálculo

Módulo III. Folhas de Cálculo Módulo III Ferramentas do Office Folhas de Cálculo Ferramentas de produtividade 1 Folhas de Cálculo O que é: Uma Folha de Cálculo é, por tradição, um conjunto de células que formam uma grelha ou tabela

Leia mais

WebSphere_Integration_Developer_D_Jan06 Script

WebSphere_Integration_Developer_D_Jan06 Script WebSphere_Integration_Developer_D_Jan06 Script 1a Nesta demonstração, Will Dunlop, um programador de integração da JK, utiliza o IBM, [ IBM], ou WID para construir um novo serviço orientado para os processos

Leia mais

SQL UMA ABORDAGEM INTERESSANTE

SQL UMA ABORDAGEM INTERESSANTE SQL é uma linguagem de consulta estruturada, do inglês Structured Query Language. É uma linguagem de pesquisa declarativa para banco de dados relacional (base de dados relacional). Muitas das características

Leia mais

Os dados no MySQL são armazenado em tabelas. Uma tabela é uma colecção de informação relacionada e consiste em colunas e linhas.

Os dados no MySQL são armazenado em tabelas. Uma tabela é uma colecção de informação relacionada e consiste em colunas e linhas. MySQL 101 Recapitulando Os dados no MySQL são armazenado em tabelas. Uma tabela é uma colecção de informação relacionada e consiste em colunas e linhas. As bases de dados são úteis quando necessitamos

Leia mais

UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO

UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Sistema de Interrogações em Língua Natural para Bases de Dados Modelo Conceptual, Aquisição de Vocabulário e Tradução Porfírio Pena Filipe (Licenciado)

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

1 Máquina URM, comandos e programas URM

1 Máquina URM, comandos e programas URM 1 Máquina URM, comandos e programas URM Definição 1 : Máquina URM (Unlimited Register Machine) Uma máquina URM é constituída por uma sucessão de registos 2 < R i > i IN. Cada registo pode conter um valor

Leia mais

Prova de Aferição de Matemática

Prova de Aferição de Matemática PROVA DE AFERIÇÃO DO ENSINO BÁSICO A PREENCHER PELO ALUNO Nome A PREENCHER PELO AGRUPAMENTO Número convencional do Aluno Número convencional do Aluno A PREENCHER PELA U.A. Número convencional do Agrupamento

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

Esta aplicação permite desempenhar tarefas relacionadas com o cálculo, análise e apresentação gráfica de dados, de uma forma rápida e eficaz.

Esta aplicação permite desempenhar tarefas relacionadas com o cálculo, análise e apresentação gráfica de dados, de uma forma rápida e eficaz. Apresentação do programa A folha de cálculo Excel é um componente do pacote Office. Esta aplicação permite desempenhar tarefas relacionadas com o cálculo, análise e apresentação gráfica de dados, de uma

Leia mais

Banco de Dados Aula 02. Colégio Estadual Padre Carmelo Perrone Profº: Willian

Banco de Dados Aula 02. Colégio Estadual Padre Carmelo Perrone Profº: Willian Banco de Dados Aula 02 Colégio Estadual Padre Carmelo Perrone Profº: Willian Conceitos básicos Dado: Valor do campo quando é armazenado dento do BD; Tabela Lógica: Representa a estrutura de armazenamento

Leia mais

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II O seguinte exercício contempla um processo com três estágios. Baseia-se no Inquérito de Satisfação Fase II, sendo, por isso, essencial compreender primeiro o problema antes de começar o tutorial. 1 1.

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

MANUAL DO UTILIZADOR

MANUAL DO UTILIZADOR MANUAL DO UTILIZADOR Versão 1.6 PÁGINA DE PESQUISA A página principal do PacWeb permite a realização de um número muito variado de pesquisas, simples, ou pelo contrário extremamente complexas, dependendo

Leia mais

Aplicações de Escritório Electrónico

Aplicações de Escritório Electrónico Universidade de Aveiro Escola Superior de Tecnologia e Gestão de Águeda Curso de Especialização Tecnológica em Práticas Administrativas e Tradução Aplicações de Escritório Electrónico Folha de trabalho

Leia mais

Web Input Module (LUNA) V2.0 1/6

Web Input Module (LUNA) V2.0 1/6 Web Input Module (LUNA) V2.0 1/6 Módulo LUNA REM O Módulo LUNA REM permite que utilizadores externos tais como agentes, fotógrafos e clientes carreguem facilmente qualquer ficheiro suportado no NEWSASSET

Leia mais

Universidade da Beira Interior Cursos: Engenharia Informática, Ensino da Informática, Matemática Aplicada e Matemática /Informática

Universidade da Beira Interior Cursos: Engenharia Informática, Ensino da Informática, Matemática Aplicada e Matemática /Informática Modelos de Dados 1 - Introdução 2 - Modelo Relacional 2.1. Estrutura de Dados Relacional 2.1.1. Modelo Conceptual de Dados Um modelo conceptual de dados é a representação de um conjunto de objectos e das

Leia mais

MIG - Metadados para Informação Geográfica

MIG - Metadados para Informação Geográfica MIG - Metadados para Informação Geográfica Introdução à Norma ISO 19115 Henrique Silva, Instituto Geográfico Português, hsilva@igeo.pt Lisboa, 14 de Fevereiro de 2008 Metadados para Informação Geográfica

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Introdução aos cálculos de datas

Introdução aos cálculos de datas Page 1 of 7 Windows SharePoint Services Introdução aos cálculos de datas Aplica-se a: Microsoft Office SharePoint Server 2007 Ocultar tudo Você pode usar fórmulas e funções em listas ou bibliotecas para

Leia mais

Bases de Dados 2007/2008. Aula 9

Bases de Dados 2007/2008. Aula 9 Bases de Dados 2007/2008 Aula 9 1. T-SQL TRY CATCH 2. TRATAMENTO ERROS RAISERROR 3. TRIGGERS 4. EXERCÍCIOS Sumário Referências http://msdn2.microsoft.com/en-us/library/ms189826.aspx (linguagem t-sql) http://www.di.ubi.pt/~pprata/bd/bd0405-proc.sql

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

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores Primeiro Teste 21 de Outubro de 2006, 9:00H 10:30H Nome: Número:

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

Geração de código intermediário. Novembro 2006

Geração de código intermediário. Novembro 2006 Geração de código intermediário Novembro 2006 Introdução Vamos agora explorar as questões envolvidas na transformação do código fonte em uma possível representação intermediária Como vimos, nas ações semânticas

Leia mais

Tarefa Orientada 6 Edição de Dados

Tarefa Orientada 6 Edição de Dados Tarefa Orientada 6 Edição de Dados Objectivos: Inserção de dados. Alteração de dados. Eliminação de dados. Definição de Listas de Pesquisa (Lookup Lists) O Sistema de Gestão de Bases de Dados MS Access

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

O que são Bancos de Dados?

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

sistemas de informação nas organizações

sistemas de informação nas organizações sistemas de nas organizações introdução introdução aos sistemas de objectivos de aprendizagem avaliar o papel dos sistemas de no ambiente empresarial actual definir um sistema de a partir de uma perspectiva

Leia mais

CAP. I ERROS EM CÁLCULO NUMÉRICO

CAP. I ERROS EM CÁLCULO NUMÉRICO CAP. I ERROS EM CÁLCULO NUMÉRICO 0. Introdução Por método numérico entende-se um método para calcular a solução de um problema realizando apenas uma sequência finita de operações aritméticas. A obtenção

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

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis.

Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis. 3. Tabelas de Hash As tabelas de hash são um tipo de estruturação para o armazenamento de informação, de uma forma extremamente simples, fácil de se implementar e intuitiva de se organizar grandes quantidades

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

Linguagem Lógica Prolog

Linguagem Lógica Prolog Linguagem Lógica Prolog Linguagens de Programação Departamento de Computação Universidade Federal de Sergipe Conteúdo O que é diferente na Programação Lógica Cláusulas, Fatos, Regras e Predicado Objetos

Leia mais

Introdução ao PHP. Prof. Késsia Marchi

Introdução ao PHP. Prof. Késsia Marchi Introdução ao PHP Prof. Késsia Marchi PHP Originalmente PHP era um assíncrono para Personal Home Page. De acordo com convenções para atribuições de nomes recursivas do GNU foi alterado para PHP Hypertext

Leia mais

Bases de Dados 2007/2008. Aula 1. Referências

Bases de Dados 2007/2008. Aula 1. Referências Bases de Dados 2007/2008 Aula 1 Sumário 1. SQL Server 2000: configuração do acesso ao servidor. 1.1. SQL Server Service Manager. 1.2. SQL Server Enterprise Manager. 1.3. SQL Query Analyzer. 2. A base de

Leia mais

Programação 2ºSemestre MEEC - 2010/2011. Programação 2º Semestre 2010/2011 Enunciado do projecto

Programação 2ºSemestre MEEC - 2010/2011. Programação 2º Semestre 2010/2011 Enunciado do projecto Mestrado Integrado em Engenharia Electrotécnica e de Computadores Programação 2º Semestre 2010/2011 Enunciado do projecto O projecto a desenvolver pelos alunos consistirá numa sistema de monitorização,

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

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

BDII SQL Junção Revisão 8

BDII SQL Junção Revisão 8 exatasfepi.com.br BDII SQL Junção Revisão 8 André Luís Duarte Leais são as feridas feitas pelo amigo, mas os beijos do inimigo são enganosos. Provérbios 27:6 SQL Introdução Produto cartesiano Nomes alternativos

Leia mais

Faculdade de Ciências da Universidade de Lisboa CURSO DE GPS. Módulo x. (Aula Prática) Reliance - Ashtech. Suas Aplicações Em SIG.

Faculdade de Ciências da Universidade de Lisboa CURSO DE GPS. Módulo x. (Aula Prática) Reliance - Ashtech. Suas Aplicações Em SIG. Faculdade de Ciências da Universidade de Lisboa CURSO DE GPS Módulo x (Aula Prática) Reliance - Ashtech e Suas Aplicações Em SIG (Carlos Antunes) INTODUÇÃO O Sistema Reliance baseia-se na utilização do

Leia mais

Introdução e motivação SGBD XML Nativo Consultas em SGBDs XML Prática. Bancos de dados XML. Conceitos e linguagens de consulta

Introdução e motivação SGBD XML Nativo Consultas em SGBDs XML Prática. Bancos de dados XML. Conceitos e linguagens de consulta Bancos de dados XML Conceitos e linguagens de consulta Sidney Roberto de Sousa MC536 - Bancos de Dados: Teoria e prática Material base: W3Schools XPath and XQuery Tutorial http://www.w3schools.com/xpath/

Leia mais

Construir um modelo de dados é: - Identificar, Analisar e Registar a política da organização acerca dos dados

Construir um modelo de dados é: - Identificar, Analisar e Registar a política da organização acerca dos dados 4. Modelo Entidade Associação 4.1. Introdução Modelo de Dados. Visão dos dados em vez de visão das aplicações. Eliminação de redundâncias. Partilha de dados pelas aplicações Construir um modelo de dados

Leia mais

Sistemas de Gestão de Bases de Dados

Sistemas de Gestão de Bases de Dados Cadeira de Tecnologias de Informação Ano lectivo 2008/2009 Sistemas de Gestão de Bases de Dados Profª Ana Lucas (Responsável) Mestre Fernando Naves Mestre Cristiane Pedron Engª Filipa Pires da Silva Dr.

Leia mais

Ficha prática nº 7. SGBD Microsoft Access e SQL Server

Ficha prática nº 7. SGBD Microsoft Access e SQL Server Instituto Superior Politécnico de Viseu Escola Superior de Tecnologia Departamento de Informática Ficha prática nº 7 SGBD Microsoft Access e SQL Server Objectivo: Criação de uma aplicação em arquitectura

Leia mais

Fernando Albuquerque - fernando@cic.unb.br. Bancos de Dados. Fernando Albuquerque. 061-2733589 fernando@cic.unb.br

Fernando Albuquerque - fernando@cic.unb.br. Bancos de Dados. Fernando Albuquerque. 061-2733589 fernando@cic.unb.br Bancos de Dados Fernando Albuquerque 061-2733589 fernando@cic.unb.br Tópicos Introdução O modelo relacional A linguagem SQL Introdução O que é um banco de dados : Coleção de informações que existe por

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

Solutions for Information Technologies. BIS-Navegador. Manual de Instalação para Microsoft SQL Server

Solutions for Information Technologies. BIS-Navegador. Manual de Instalação para Microsoft SQL Server Solutions for Information Technologies BIS-Navegador Manual de Instalação para Microsoft SQL Server Supporte A suite BIS foi testada e é suportada nos seguintes ambientes e produtos: BIS Client Components:

Leia mais

Figura 1 - O computador

Figura 1 - O computador Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...

Leia mais

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

SQL DML. Frederico D. Bortoloti freddb@ltc.ufes.br Banco de Dados I SQL DML Frederico D. Bortoloti freddb@ltc.ufes.br SQL - DML Os exemplos da aula serão elaborados para o esquema de dados a seguir: Empregado(matricula, nome, endereco, salario, supervisor,

Leia mais

TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO ACCESS 2010 Conceitos Básicos Ficha Informativa Professor : Vanda Pereira módulo didáctico Conceitos Básicos Necessidade das base de dados Permite guardar dados

Leia mais

Licenciatura de EI 2010/2011. msantos@ispgaya.pt. Mário Santos / Carlos Ramos

Licenciatura de EI 2010/2011. msantos@ispgaya.pt. Mário Santos / Carlos Ramos 5º semestre Licenciatura de EI 2010/2011 msantos@ispgaya.pt cramos@ispgaya.ptpt / Carlos Ramos 1 Objectivos da Disciplina de Sistemas de Informação da Licenciatura de EI Complementar a formação em bases

Leia mais

Base de Dados para Administrações de Condomínios

Base de Dados para Administrações de Condomínios Base de Dados para Administrações de Condomínios José Pedro Gaiolas de Sousa Pinto: ei03069@fe.up.pt Marco António Sousa Nunes Fernandes Silva: ei03121@fe.up.pt Pedro Miguel Rosário Alves: alves.pedro@fe.up.pt

Leia mais

Sistemas de Informação

Sistemas de Informação MODELO CONCEPTUAL DE DADOS Escola Superior de Tecnologia e Gestão de Felgueiras Engenharia Informática 3º ano - 2003/2004 Ana Maria Madureira 1. MODELO CONCEPTUAL DE DADOS Descreve o S.I. da Organização

Leia mais

PROGRAMA. Objectivos Gerais :

PROGRAMA. Objectivos Gerais : PROGRAMA ANO LECTIVO : 2005/2006 CURSO : ENGENHARIA MULTIMÉDIA ANO: 2.º DISCIPLINA : SISTEMA DE GESTÃO DE BASE DE DADOS DOCENTE RESPONSÁVEL PELA REGÊNCIA : Licenciado Lino Oliveira Objectivos Gerais :

Leia mais

Função dos Sistemas de Bases de Dados Visão dos dados Modelos de dados Linguagem de Definição de Dados Linguagem de Manipulação de Dados Gestão de

Função dos Sistemas de Bases de Dados Visão dos dados Modelos de dados Linguagem de Definição de Dados Linguagem de Manipulação de Dados Gestão de Capítulo 1: Introdução Função dos Sistemas de Bases de Dados Visão dos dados Modelos de dados Linguagem de Definição de Dados Linguagem de Manipulação de Dados Gestão de Transacções Gestão de Armazenamento

Leia mais

Conceitos básicos de programação

Conceitos básicos de programação O QUE É UM PROGRAMA? Para executar uma dada tarefa é geralmente necessário entender o sistema onde ela é realizada. Por exemplo, para fazer um bolo temos um sistema composto por: Ingredientes Cozinheiro

Leia mais

ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL

ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL PROF. MS C. RICARDO ANTONELLO WWW.ANTONELLO.COM.B R PORQUE SER RELACIONAL? Hoje, há um claro predomínio dos SGBD relacionais, principalmente

Leia mais

Um compilador é um programa que lê um programa escrito numa dada linguagem, a linguagem objecto (fonte), e a traduz num programa equivalente

Um compilador é um programa que lê um programa escrito numa dada linguagem, a linguagem objecto (fonte), e a traduz num programa equivalente Capítulo 1 Introdução Um compilador é um que lê um escrito numa dada linguagem, a linguagem objecto (fonte), e a traduz num equivalente numa outra linguagem, a linguagem destino Como parte importante neste

Leia mais

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 7 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Aprender sobre a modelagem lógica dos dados. Conhecer os

Leia mais

Sistemas de Informação

Sistemas de Informação 5º semestre Licenciatura de EI 2011/2012 msantos@ispgaya.pt cramos@ispgaya.pt / Carlos Ramos 1 Objectivos da Disciplina de Sistemas de Informação da Licenciatura de EI Complementar a formação em bases

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Guia de utilização da notação BPMN

Guia de utilização da notação BPMN 1 Guia de utilização da notação BPMN Agosto 2011 2 Sumário de Informações do Documento Documento: Guia_de_utilização_da_notação_BPMN.odt Número de páginas: 31 Versão Data Mudanças Autor 1.0 15/09/11 Criação

Leia mais

Iniciar o Data Adapter Configuration Wizard. Toolbox Data Duplo clique em OleDbDataAdapter. Botão next na caixa de diálogo

Iniciar o Data Adapter Configuration Wizard. Toolbox Data Duplo clique em OleDbDataAdapter. Botão next na caixa de diálogo Iniciar o Data Adapter Configuration Wizard Toolbox Data Duplo clique em OleDbDataAdapter Botão next na caixa de diálogo Se carregar em Cancel, o wizard é cancelado e podemos depois definir as propriedades

Leia mais

PROGRAMA. Aquisição dos conceitos teóricos mais importantes sobre bases de dados contextualizados à luz de exemplos da sua aplicação no mundo real.

PROGRAMA. Aquisição dos conceitos teóricos mais importantes sobre bases de dados contextualizados à luz de exemplos da sua aplicação no mundo real. PROGRAMA ANO LECTIVO: 2005/2006 CURSO: LICENCIATURA BI-ETÁPICA EM INFORMÁTICA ANO: 2.º DISCIPLINA: BASE DE DADOS DOCENTE RESPONSÁVEL PELA REGÊNCIA: Licenciado Lino Oliveira Objectivos Gerais: Aquisição

Leia mais

Oficina de Multimédia B. ESEQ 12º i 2009/2010

Oficina de Multimédia B. ESEQ 12º i 2009/2010 Oficina de Multimédia B ESEQ 12º i 2009/2010 Conceitos gerais Multimédia Hipertexto Hipermédia Texto Tipografia Vídeo Áudio Animação Interface Interacção Multimédia: É uma tecnologia digital de comunicação,

Leia mais

Práticas de Programação em Lógica. José Romildo Malaquias

Práticas de Programação em Lógica. José Romildo Malaquias Práticas de Programação em Lógica José Romildo Malaquias 9 de março de 2010 2 Sumário 1 Execução de programas em Prolog 1-1 1.1 Objetivos........................................ 1-1 1.2 Conceitos........................................

Leia mais

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir:

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir: Chaves 1 Chaves CONCEITO DE CHAVE: determina o conceito de item de busca, ou seja, um dado que será empregado nas consultas à base de dados. É um conceito lógico da aplicação (chave primária e chave estrangeira).

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

Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL

Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL OBJECTIVOS Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL O objecto DOCMD Este objecto permite o acesso a todas as operações sobre todos os objectos

Leia mais

Tarefa Orientada 1 Base de Dados Editora

Tarefa Orientada 1 Base de Dados Editora Tarefa Orientada 1 Base de Dados Editora Objectivos: Criar as tabelas da base de dados Editora Criar o diagrama da base de dados Editora Inserir registos com os dados de teste Criar as tabelas da base

Leia mais

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

Leia mais

Sistemas de Gestão de Bases de Dados

Sistemas de Gestão de Bases de Dados Cadeira de Tecnologias de Informação Ano lectivo 2007/08 Sistemas de Gestão de Bases de Dados Prof. Mário Caldeira Profª Ana Lucas Dr. Fernando Naves Engª Winnie Picoto Engº Luis Vaz Henriques Dr. José

Leia mais

Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos

Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos Indice Indice... 2 1. Introdução... 3 2. Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos (SILOGR)....

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Usando o Excel ESTATÍSTICA. A Janela do Excel 2007. Barra de título. Barra de menus. Barra de ferramentas padrão e de formatação.

Usando o Excel ESTATÍSTICA. A Janela do Excel 2007. Barra de título. Barra de menus. Barra de ferramentas padrão e de formatação. Barra de deslocamento ESTATÍSTICA Barra de menus Barra de título Barra de ferramentas padrão e de formatação Barra de fórmulas Conjuntos e Células (Intervalos) Área de trabalho Separador de folhas Barra

Leia mais

Tarefa Orientada 17 Listas de dados

Tarefa Orientada 17 Listas de dados Tarefa Orientada 17 Listas de dados Estudo prático da folha de cálculo Excel - Gestão de listas como base de dados. Conceitos teóricos Lista Série de linhas da folha de cálculo que contém dados relacionados,

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 Agenda Estrutura Básica de consultas SQL: A cláusula SELECT; A cláusula FROM; A cláusula WHERE. Operação com cadeias

Leia mais

Planificações 2012/2013. Tecnologias da Informação e Comunicação. 2ºAno. Escola Básica Integrada de Pedome. C E F Apoio à Família e à Comunidade

Planificações 2012/2013. Tecnologias da Informação e Comunicação. 2ºAno. Escola Básica Integrada de Pedome. C E F Apoio à Família e à Comunidade Planificações 2012/2013 Tecnologias da Informação e Comunicação C E F Apoio à Família e à Comunidade 2ºAno Escola Básica Integrada de Pedome Grupo Disciplinar de Informática Planificação a Longo Prazo

Leia mais

Aprend.e Sistema integrado de formação e aprendizagem

Aprend.e Sistema integrado de formação e aprendizagem Aprend.e Sistema integrado de formação e aprendizagem Pedro Beça 1, Miguel Oliveira 1 e A. Manuel de Oliveira Duarte 2 1 Escola Aveiro Norte, Universidade de Aveiro 2 Escola Aveiro Norte, Departamento

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

Módulo 6: Linguagem de Programação IV 6.1. Introdução 6.2. Bases de Dados 6.2.1. Visão Estrutural 6.2.2. SGBD: Sistema de Gestão de Bases de Dados

Módulo 6: Linguagem de Programação IV 6.1. Introdução 6.2. Bases de Dados 6.2.1. Visão Estrutural 6.2.2. SGBD: Sistema de Gestão de Bases de Dados Curso Profissional de Técnico de Multimédia 12ºAno Disciplina: Sistemas de Informação Módulo 6: Linguagem de Programação IV 6.1. Introdução 6.2. Bases de Dados 6.2.1. Visão Estrutural 6.2.2. SGBD: Sistema

Leia mais