Base de dados
Tabelas
Introdução
As Bases de Dados são coleções organizadas de dados, em formato digital, que podem ser acedidas por diferentes programas. No caso das BDs ofimáticas, a informação guarda-se num único ficheiro e o gestor (LibreOffice Base, MS Access, etc) inclui uma interface gráfica e amigável com ferramentas para criar consultas, relatórios e formulários de forma singela.
Os dados organizam-se em tabelas, cada uma formada por uma série de colunas e registos (linhas). As tabelas relacionam-se entre elas segundo o Modelo Entidade Relacionamento.
Como técnicos informáticos, devemos ter um conhecimento profundo das bases de dados ofimáticas, por uma parte para projetá-las, inserir dados e obter informação significativa e por outra, para ensinar a utilizadores finais a realizar estas ações.
Criação de tabelas
Em primeiro lugar é preciso definir cada uma das tabelas da base de dados, e para cada tabela, as suas colunas:
- Nome da coluna.
- Tipo de dados: número inteiro (integer), decimal, caracteres (varchar), data, lógico (boolean) entre outros.
- Comprimento da coluna: número de caracteres ou algarismos e, se proceder, número de casas decimais.
- Valor requerido: não admite valores vazios (null).
- Definir uma como chave primária: o valor tem de ser único em toda a tabela e vai servir como índice de pesquisa.
- Valor automático: é frequente que a chave primária de uma tabela seja de tipo inteiro e com valor autoincremental.
No nome das tabelas e colunas, devemos evitar acentos e caracteres especiais como "ç" ou "ñ".
A seguir, podemos inserir dados na tabela.
Relacionamento de tabelas
Caso duas tabelas estejam relacionadas, a chave primária de uma vai estar presente na outra como chave forânea. Por exemplo, numa BD para a gestão de uma editorial, podemos ter uma tabela que guarde informação dos escritores e outra que armazene os registos relativos aos livros editados:
- autores: id_autor, nome, apelidos, telefone...
- livros: isbn, titulo, id_autor, num_paginas, data...
As chaves primárias são "id_autor" em "autor" e "isbn" em "livro". A chave forânea, que relaciona as duas tabelas, é "id_autor". Isto implementa uma relação 1:N, quer dizer, um livro é atribuído a um (1) autor e um autor pode ter vários (N) livros. É uma simplificação da realidade porque um livro pode ser criado por vários autores, mas podemos considerar que se trata do autor principal.
Este relacionamento faz-se no menu Ferramentas, Relacionamentos, arrastando a chave forânea de uma tabela até a chave primária da outra para indicar que se trata do mesmo campo, independentemente de se se chamam igual (id_autor) ou não.
Código SQL
Para trabalhar com os gestores de bases de dados mais potentes (MySQL, Oracle, PostgreSQL, etc.) utiliza-se código SQL, com o que é possível executar todas as ações sobre a BD, por exemplo:
- criar, modificar e eliminar tabelas;
- inserir, modificar e eliminar registos;
- realizar consultas;
Em LibreOffice Base podemos executar em Ferramentas, SQL, comandos como:
- CREATE TABLE / ALTER TABLE / DROP TABLE
- INSERT INTO / UPDATE / DELETE FROM
- SELECT * FROM
Depois de criar ou apagar uma tabela, devemos executar a opção Atualizar tabelas do menu Ver.
Dica: embora numa instrução SQL não seja necessário, devemos pôr o nome da tabela entre aspas para que seja compatível com o nome criado por LibreOffice Base:
DROP TABLE "autores"
As instruções SQL são utilizadas embebidas noutras linguagens de programação, para conseguir que uma aplicação ou página Web aceda aos conteúdos de uma base de dados e depois poder mostrá-los ao utilizador ou trabalhar internamente com eles.
Consultas
Introdução
Em construção...
Consultas básicas
Consultas complexas
- Se quisermos eliminar dados repetidos no resultado da consulta, devemos clicar no botão "Valores distintos".
Formulários
Introdução
Em construção...
Quando só precisamos navegar pelos dados (por exemplo, de uma consulta) podemos marcar estas caixas de verificação no momento da criação do formulário.
Uma alternativa é desativar os controlos depois de inseri-los como foi visto anteriormente.
Relatórios
Introdução
Em construção...