Sistemas de Informação

Just another WordPress.com weblog

Aula n.º 164-165, 15 de Dezembro de 2009

Sumário:

  • PHPMyAdmin:
    • Construção e gestão de uma base de dados: criação de tabelas, criação de registos, eliminação de registos e tabelas.
  • MySQL – base de dados, tabelas e tipos.

Tempo de Aula: 45′.

1. PHPMyAdmin

Através desta aplicação é possível criar e eliminar bases de dados, criar, alterar e eliminar tabelas e campos, fazer exportações, executar queries SQL, adicionar e remover utilizadores, etc, etc…

2. MySQL

O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface. É atualmente um dos bancos de dados mais populares, com mais de 10 milhões de instalações pelo mundo.

Tipos

Cada um destes tipos representa um grupo dentro dos tipos MySQL por isso a sua escolha, podemos dizer que pertencem a uma família. A lógica dos tipos em MySQL é igual à referida em relação ao PHP. Os tipos permitem guardar informação com base nas suas características.

Embora haja muitos outros, os tipos de dados mais importantes são descritos na tabela abaixo:

INT

Como o resto da família (ex. bigint, tinyint, etc) aceita números inteiros. Pode aceitar números negativos e positivos (signed) ou só positivos (unsigned). Se for signed o intervalo de números que aceita situa-se entre –2,147,483,648 e 2,147,483,647. Se for unsigned o intervalo é de 0 a 4,294,967,295.
Para números mais pequenos: tinyint, para números maiores bigint.

FLOAT

Permite guardar números vírgula flutuante. Algo como um preço, uma distância, números do dia-a-dia que não têm o compromisso de serem inteiros devem ser guardados em campos que permitem números vírgula flutuante.

VARCHAR

Permite armazenar strings.  São ideais para grande parte dos campos que vamos utilizar, como por exemplo, nome, email, sobrenome, etc

DATETIME

Guarda uma combinação entre data e hora. O formato standard em que guarda esta informação é a seguinte aaaa-mm-dd hh:mm:ss. Pode-se enviar esta informação como números ou strings. Assim sendo, 20090510163000 e 20095-05-130 162:306:00 são ambos aceitáveis.

Atributos dos Tipos

Os atributos são características que atribuímos a certos campos de forma a controlar ainda mais a informação que os campos vão conter. Vamos abordar apenas 3 atributos, existem bastantes mais. Estes atributos podem estar disponíveis para um tipo e não para outro.

AUTO_INCREMENT

Este atributo é essencial ao bom funcionamento das nossas aplicações ao retirar dos nossos ombros uma lógica essencial. Sempre que uma nova linha é inserida, o MySQL atribui a um campo com auto_increment um número inteiro único. O número atribuido é igual ao número da linha anterior + 1. Ou seja, é um valor auto_incrementado.
Existem algumas regras para a utilização deste atributo. Por tabela apenas pode existir uma coluna com auto_increment e essa tem que ser designada com outro atributo, que falaremos a seguir, o de chave primária (primary key).

DEFAULT

Este atributo permite definir um valor por defeito para um campo. Se durante a inserção de uma linha não for especificado o valor do campo, o MySQL atribui ao campo o valor por defeito.

PRIMARY KEY

Uma chave primária garante que os valores existentes numa coluna não podem ser repetidos.
Isto atributo é fundamental pois, desta forma, cada registo ou linha pode ser chamado de forma independente. Imaginem que se trata de um número de bi, mais ninguém tem o mesmo número e associado a esse número estão dados como nome, data nascimento, filiação, etc… Quando queremos saber o nome, bastar indicar o número de bi. Como é único, é infalível.

NOTA: Atributos definidos como varchar podem ocupar menos espaço físico no servidor, visto que seu tamanho pode variar de acordo com o valor informado.

Ex: um campo varchar de 30 caracteres pode ter o tamanho máximo de 30 caracteres, mas se for informado um valor menor, o campo se adaptará ao valor indicado, desde que não exceda o valor máximo indicado. Ao contrário, atributos do tipo char tem o tamanho fixo. O uso do atributo varchar torna a tabela mais lenta em suas operações.
Campos definidos como not null obrigatoriamente devem receber um valor. Em geral, é definido um valor padrão através do parâmetro ‘default’, que define um valor padrão para o campo.

Chave primária e chave estrangeira

As chaves primárias (primary key) são utilizadas para identificar um registro dentro de uma tabela. Ex: A matrícula de cada aluno pode ser utilizada para identificá-lo dentro da classe. Colunas definidas como primary key devem obrigatoriamente ser do tipo not null e não podem ter seu valor repetido, afinal, trata-se de um identificador único para cada elemento cadastrado. Preferencialmente utilizam-se campos numéricos para chaves primárias (ex: id, matrícula) ou outro atributo que respeite os argumentos citados.
As chaves estrangeiras são usadas quando queremos relacionar tabelas entre si.

Ex:  Cada aluno matriculado será colocado em uma determinada turma. Podemos ter uma tabela chamada turma, com informações das turmas existentes e uma chave primária para identificar cada turma, assim como na tabela aluno. Então, só precisamos criar uma terceira tabela (ex: matriculado), contendo apenas a chave primária que identifica o aluno e a turma em que será matriculado. Para a tabela matriculado, esses atributos são chaves estrangeiras, pois não são identificadores da própria tabela, e sim identificadores pertencentes à outras tabelas (daí o nome de chaves estrangeiras). Essa técnica faz com que as pesquisas tornem-se mais eficientes, agiliza o funcionamento do banco de dados, organiza melhor as informações e possibilita melhor gestão das informações registadas. Veremos o uso de chaves estrangeiras mais adiante.

Passemos então à construção da nossa base de dados com auxílio do PHPMyAdmin, seguindo as indicações dos vídeos distribuídos nas aulas, para consolidação de conhecimentos.

Veja, portanto, os 6 vídeos, para recordar passo a passo o funcionamento do PHPMyAdmin .

Por hoje é tudo, continuamos na próxima aula.

Dezembro 14, 2009 Publicado por | 1 | Deixe um Comentário

   

Seguir

Get every new post delivered to your Inbox.