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.



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

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo

Bases de Dados 1º semestre

Bases de Dados 1º semestre

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

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo

Acronis Servidor de Licença. Manual do Utilizador

Sistemas Empresariais Integrados

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

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

Tarefa Orientada 15 Manipulação de dados

Bases de Dados. Lab 7: Desenvolvimento de aplicações com PHP

RECOLHA DE INFORMAÇÃO DE REMUNERAÇÕES, SUPLEMENTOS E DOS PONTOS DECORRENTES DA AVALIAÇÃO DE DESEMPENHO

Segurança de Dados no PostgreSQL

- O MySQL para além da sua utilização em modo linha de comandos, também pode ser utilizado através de ferramentas gráficas.

Tarefa Orientada 1 Base de Dados Editora

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

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

Manual de backup do banco de dados PostgreSQL - Versão 2. Setembro-2011

1 Code::Blocks Criação de projetos

Administração e Optimização de BDs

Administração da disciplina

PACWEB Módulo de Pesquisa MANUAL DO UTILIZADOR

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

Reconhecer a estrutura de um sistema operativo. Definir um plano de instalação de um servidor de rede local.

VM Card. Referência das Definições Web das Funções Avançadas. Manuais do Utilizador

Guia rápido do utilizador

PgAdmin. O pgadmin é um software gráfico para administração do SGBD PostgreSQL disponível para Windows e UNIX.

Seu manual do usuário EPSON LQ-630

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

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

Tarefa Orientada 17 Listas de dados

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

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

ZS Rest. Manual Avançado. Ementas : e SMS. v2011

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

Aplicações de Escritório Electrónico

AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES

AMBIENTE DE PROGRAMAÇÃO PYTHON

Cookies. Krishna Tateneni Jost Schenck Tradução: José Pires

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

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

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

Microsoft Office FrontPage 2003

P S I 2. º A N O F 5 M E S T R E / D E T A L H E E P E S Q U I S A. Criar uma relação mestre-detalhe. Pesquisa de informação

Criação de Páginas Web - MS Word 2000

COMPETÊNCIAS BÁSICAS EM TIC NAS EB1

Programação 2008/2009 MEEC Guia de instalação do PC de programação

Principais Comandos SQL Usados no MySql

JDBC Java Database Connectivity

NOÇÕES ELEMENTARES DE BASES DE DADOS

TUTORIAL DE CRIAÇÃO DE BANCO DE DADOS ESPACIAL

UTILIZAÇÃO DAS SALAS DE INFORMÁTICA

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Conteúdo O que é?... 4 Histórico... 4 Onde Baixar?... 4 Diferença entre Firebird e o Interbase... 4 Como instalar?... 4 Instalando o Ibexpert...

PRIMAVERA EXPRESS: Funcionalidades do Produto

Bases de Dados 2005/2006. Aula 5

Comandos DDL. id_modulo = id_m odulo

Plataforma de Benefícios Públicos Acesso externo

Google Sites. A g r u p a m e n t o C a m p o A b e r t o /

Projeto Amadeus. Guia de Instalação Windows

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

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

Manual de Utilizador Documentos de Transporte. TOConline. Suporte. Página - 1

Consistem num conjunto de apontadores para instâncias especificas de cada relação.

Oracle SQL Developer

Download. Instalaça o. Geral

MANUAL INSTALAÇÃO GESPOS WINDOWS

Java Mail Server. Manual do Utilizador

AULA 1 Iniciando o uso do TerraView

02 - Usando o SiteMaster - Informações importantes

Fazer Backup de Dados e Informação no Windows ÍNDICE RECOMENDAÇÕES:... 2

Manual de Instruções para a Criação de Ficheiros CSR. Microsoft IIS 5/6

Tarefa Orientada 16 Vistas

ZS Rest. Manual Avançado. Monitor de Publicidade. v2011

Explorar os comandos no friso Cada friso tem grupos e cada grupo tem um conjunto de comandos relacionados.

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

Ferramentas de Comunicação da Internet no Ensino/Aprendizagem

Manual de Instalação Solução Alinex Salas TIC Pág. 1/32

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

EIC. Projecto I. Manual do Utilizador. Vídeo Vigilância Abordagem Open Source. Curso: Engenharia de Informática e Comunicações Ano Lectivo: 2005/2006

Referencial do Módulo B

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP

MULTIACERVO - VERSÃO 17.*

Manual do Utilizador

bit Tecnologia ao Serviço do Mundo Rural

Introdução ao SQL. Aécio Costa

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco

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

Tarefa Orientada 19 Triggers

Tarefa Orientada 18 Tabelas dinâmicas

Manual de Utilização. GESTOR DE METADADOS DOS AÇORES (GeMA) Setembro de Versão 4.0

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

GereComSaber. Desenvolvimento de Sistemas de Software. Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática

Manual de Utilizador Carregamento e Processamento de Ficheiros via Internet Banking. Português - V1

Moodle - CEAD Manual do Estudante

Tutorial de Carga e Atualização Modelo ERP

Instruções de Instalação BitDisk

Proxy. Krishna Tateneni Tradução: José Pires

Transcrição:

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 ilustrada na figura 1. Figura 1. Base de dados de exemplo Para criar a base de dados é necessário criar as tabelas e carregar os registos de cada tabela. A criação das tabelas é feita com recurso à instrução CREATE TABLE. Por exemplo, a tabela de clientes pode ser criada com a seguinte instrução: create table customer (customer_name varchar(255) not null unique, customer_street varchar(255) not null, customer_city varchar(255) not null, primary key(customer_name)); Esta instrução especifica o nome da tabela, os nomes das três colunas, o tipo de cada coluna, e ainda restrições tais como os valores não poderem ser NULL e o facto da chave primária da tabela ser o nome do cliente. IST/DEI Pág. 1 de 6

Os registos de cada tabela são carregados através de instruções do tipo INSERT. Por exemplo: insert into customer values ('Jones','Main','Harrison'); em que são especificados, respectivamente, os valores de cada coluna pela mesma ordem em que estes foram definidos aquando da criação da tabela 1. Esta instrução resulta na criação de um novo registo na tabela de clientes. Utilização da linha de comando Para realizar os passos que se seguem, reinicie o computador em Linux. Em geral todos os sistemas de gestão de base de dados dispõe de uma linha de comando através da qual é possível executar instruções SQL e também outros comandos de administração e manutenção do sistema. Enquanto que a linguagem SQL está normalizada e pode ser usada em todos os sistemas, já os comandos de administração e manutenção são específicos e diferentes para cada sistema. No Postgres a linha de comando está acessível através do programa psql. 1. Faça download do ficheiro create-bank.sql e guarde-o num directório à sua escolha (p.ex. /var/www/) 2. Abra um terminal e navegue até ao directório onde guardou o ficheiro create-bank.sql 3. Invoque o programa psql com o comando: psql -U postgres -h localhost -W onde -U postgres indica o nome de utilizador. O sistema pedirá a password, que é idêntica ao nome de utilizador. 4. Uma vez dentro do sistema, utilize o comando \h para obter informação sobre todos os comandos SQL disponíveis. Use \q para sair. 5. Utilize o comando \? para obter informação sobre todos os comandos de administração disponíveis. 1 Existem outras variantes da instrução INSERT com as quais é possível especificar os valores por outra ordem, ou especificar apenas alguns dos valores pretendidos deixando os restantes a NULL ou com o valor por omissão (default value, que neste caso não foi especificado) IST/DEI Pág. 2 de 6

6. Se precisar de sair do programa, pode utilizar a qualquer momento o comando: \q 7. Na lista de comandos de administração terá notado a existência de um comando nesta forma: \i FILE execute commands from file 8. É este commando que vamos utilizar para executar as instruções no ficheiro createbank.sql. Execute o comando: \i create-bank.sql O Postgres produz algumas mensagens à medida que executa as instruções do ficheiro. 9. Ligue-se à base de dados recém-criada com o comando: \c bank 10. Para listar as tabelas da base de dados, use o comando: \d 11. Após a ligação à base de dados pode fazer algumas consultas, nomeadamente: ver a lista completa de clientes: SELECT * FROM customer; ver a lista completa de contas: SELECT * FROM account; Em aulas futuras verá como obter a resposta a consultas mais complicadas. 12. O tempo que o sistema demora a responder a algumas consultas é um factor importante quando o volume de dados é considerável. Execute o comando: \timing Repita as consultas anteriores. Passará a ver o tempo que o sistema demora a responder. 13. Use o comando \q para sair do sistema e voltar ao terminal. Obter informação sobre o esquema de uma base de dados Para uma base de dados existente no sistema mas sobre a qual não haja documentação, é possível usar instruções especiais para obter informação sobre os artefactos existentes no sistema (bases de dados, tabelas, vistas, funções, etc.). Geralmente estes mecanismos são proprietários e diferentes para cada sistema. No Postgres essas funcionalidades estão disponíveis através do comando \d e variantes. 1. Abra um terminal e invoque o programa psql com o comando: psql -U postgres -h localhost -W IST/DEI Pág. 3 de 6

2. Utilize o comando \l ( L pequeno) para obter uma relação de todas as bases de dados existentes no sistema. 3. Para se ligar à base de dados bank, utilize o comando: \c bank 4. Obtenha informação sobre as tabelas de clientes e contas: \d customer \d account Confirme que esta descrição corresponde às especificações com que essas tabelas foram criadas. 5. Use o comando \q para sair do sistema e voltar ao terminal. Utilização da ferramenta de administração A linha de comando é geralmente a forma de ter acesso a todas as funcionalidades do sistema. No entanto, para um conjunto limitado de tarefas é possível recorrer a ferramentas mais simples. A distribuição do Postgres inclui uma ferramenta de administração designada pgadmin III. 1. Abra um terminal e chame a aplicação pgadmin III com o comando: pgadmin3 2. Clique no botão de adicionar ligação e escreva localhost como nome e sistema anfitrião. Especifique também o nome de utilizador e palavra-passe. 3. Expanda a árvore e localize a base de dados bank, bem como as suas tabelas, que foram criadas quando executou \i create-bank.sql na linha de comando. 4. No menu de ferramentas, abra a ferramenta query tool ( ferramenta de consulta se o sistema estiver em português) 5. Escreva as mesmas consultas que realizou anteriormente na linha de comando. Após escrever o comando SQL use o botão executar consulta. Observe os resultados. 6. Repita as mesmas consultas mas agora utilize o botão explicar consulta. 7. Repare que o sistema mostra graficamente o plano de execução que seguiu para responder à consulta. Para perguntas simples como esta, foi necessária apenas uma operação de pesquisa sequencial. Mais para a frente na disciplina veremos como o sistema gera planos para responder a perguntas mais complexas. IST/DEI Pág. 4 de 6

Gerar o script de uma base de dados A base de dados de exemplo foi criada com recurso a um script (ficheiro de texto) com uma série de instruções SQL. Durante a utilização da base de dados serão adicionados, removidos e alterados registos, de modo que o estado da base de dados é o resultado das operações realizadas. A qualquer momento é possível gerar um script quer para efeitos de backup, quer para efeitos de replicação da base de dados noutro sistema. Em geral existem mecanismos próprios que são mais adequados para esse efeito, mas o script de criação de uma base de dados é útil em muitas ocasiões. 1. Abra um terminal e invoque o programa pg_dump com o comando: pg_dump -U postgres -h localhost -W bank onde bank é o nome da base de dados cujo script se pretende obter. 2. Verá que o programa produz o script no terminal. Vamos redireccionar o output de forma a guardar o script num ficheiro. Invoque novamente o programa pg_dump com os seguinte parâmetros: pg_dump -U postgres -h localhost -W bank > backup-bank.sql onde backup-bank.sql é o nome do ficheiro que será criado. 3. Para ver o conteúdo do ficheiro backup-bank.sql use o comando: cat backup-bank.sql 4. Compare o conteúdo de backup-bank.sql com create-bank.sql. Alguns elementos não existiam no ficheiro original. Contudo, observe que apesar de usar instruções diferentes este script criará uma base de dados idêntica à original. Importação de dados Muitas vezes é necessário importar dados que se encontram noutro formato, por exemplo numa folha de cálculo. É geralmente possível converter esses dados para um ficheiro de texto separado por vírgulas (CSV) ou por tabs (TSV). Uma vez num destes formatos, o Postgres dispõe de um comando \copy que permite importar esses dados. 1. Crie um ficheiro de texto com várias linhas correspondentes a novos clientes, em que cada linha tem a forma: nome,rua,cidade IST/DEI Pág. 5 de 6

2. Invoque o programa psql. 3. Ligue-se à base de dados bank. 4. Faça uma consulta à tabela customer para ver o seu conteúdo. 5. Execute o comando: \copy tabela from ficheiro with delimiter ',' onde tabela deve ser substituído pelo nome da tabela que receberá os dados e ficheiro deve ser substituído pelo nome do ficheiro de texto que criou. 6. Faça uma consulta à tabela customer para ver o conteúdo. 7. Faça uma consulta à tabela account para ver o conteúdo. 8. Crie um ficheiro de texto com um única linha que descreva uma nova conta a adicionar à tabela account: A-555,New York,800.00 9. Execute um comando \copy para importar estes dados para a tabela account. 10. O sistema produz um erro. Consegue encontrar uma possível explicação para a causa deste erro? 11. Altere os dados da conta A-555 de modo que o sistema deixe de produzir o erro e aceite os novos dados. 12. Execute novamente o comando \copy e faça uma consulta à tabela account para ver o conteúdo. Lista de comandos Postgres utilizados \h Obter informação sobre todos os comandos SQL disponíveis. \q Sair da linha de comando do Postgres. \? Obter informação sobre todos os comandos de administração. \i file Executar os comandos contidos no ficheiro indicado. \c database Ligar à base de dados indicada. \d Listas as tabelas da base de dados actual. \timing Mostrar o tempo de execução das consultas. \l Listar todas as bases de dados existentes no sistema. \d table Obter informação sobre a estrutura de uma tabela. \copy Copiar o conteúdo de um ficheiro para uma tabela. IST/DEI Pág. 6 de 6