4D v16.3

Conceitos Básicos de Bancos de Dados

Página Inicial

 
4D v16.3
Conceitos Básicos de Bancos de Dados

Conceitos Básicos de Bancos de Dados  


 

 

Um banco de dados é um conjunto de informação organizada de maneira que possa ser utilizada eficientemente. Um diretório telefônico é um bom exemplo de um banco de dados. Outros exemplos são um dicionário, um calendário ou um livro de receitas.

 A informação em um banco está organizada em forma de registros. Cada registro contém toda a informação sobre uma pessoa ou um elemento do banco. Por exemplo, cada registro no diretório telefônico contém um nome, endereço e número telefônico de uma pessoa.

Cada registro contém campos. Um campo é utilizado para armazenar o endereço e outro campo para armazenar o número telefônico da pessoa. Cada registro contém cada um destes campos e cada registro pode ter informação nestes campos.

O nome de um campo geralmente identifica a informação armazenada no campo. Por exemplo, os campos podem se chamar Nome, Endereço ou Número telefônico. Cada campo tem um tipo que identifica a classe de informação que pode ser armazenada: números, datas, caracteres alfanuméricos e outros. Como cada campo contém um tipo específico de dados, você pode realizar cálculos e outras operações com a informação guardada neles. Por exemplo, pode somar os números dos campos. Pode comparar a data de um campo com a de outro. Pode mostrar o nome de uma pessoa (armazenado em um campo) depois de seu sobrenome (armazenado em outro campo) para construir a primeira linha de uma etiqueta de correio.

O conjunto de registros que utilizam os mesmos campos forma uma tabela. Cada banco de dados pode ter muitas tabelas. A imagem a seguir mostra como se relacionam estes conceitos.

4D pode reorganizar os registros e realizar cálculos com a informação para torná-la muito mais útil. Por exemplo, 4D pode calcular os valores totais em um campo e apresentar o total em um relatório. Pode calcular o total de vendas por pessoa e apresentar um gráfico que compare os resultados das vendas.

 

4D permite criar desde 1 até 32.767 tabelas por banco de dados. Isso quer dizer que pode criar uma estrutura que se adapte exatamente às suas necessidades.

Alguns bancos de dados utilizam somente uma tabela. É possível utilizar só uma tabela para uma categoria de informação somo funcionários, empresas ou inventário. É possível ter tantos campos quanto for necessário em uma tabela (até 32.767).

 


Na imagem anterior, o registro de cada uma das pessoas necessita o mesmo tipo de dados. O banco de dados cresce de acordo ao número de registros de artistas armazenados.

Um banco de dados pode armazenar muito mais dados e acessar a informação de forma mais eficiente utilizando mais de uma tabela. Uma boa regra para levar em consideração é que os diferentes tipos de informação devem ser armazenados em diferentes tabelas.

Um banco de dados que guarda informação sobre empregados e empresas é um bom exemplo. Os registros dos empregados e as empresas são armazenados em tabelas diferentes. Se o endereço de uma empresa muda, só é necessário modificar o registro desta empresa. Não é necessário escrever o novo endereço para todas as pessoas que trabalhem nesta empresa.

Com somente uma tabela, você necessitaria introduzir o endereço em cada registro; com duas tabelas, só é necessário introduzir o endereço uma vez. Quando se introduz o nome de uma empresa em um registro de um funcionário, 4D pode buscar o registro que corresponda a esta empresa e mostrar automaticamente o endereço correto.

A imagem a seguir mostra a estrutura de um banco de dados multi-tabelas no qual duas tabelas estão relacionadas. A seta entre o campo Empresa e o campo Nome representa esta relação.

Os dados de cada empregado são armazenados na tabela [EMPREGADOS]. Os dados sobre as empresas são armazenados separadamente na tabela [EMPRESAS]

4D é um banco de dados relacional porque pode utilizar múltiplas tabelas e relacioná-las de distintas maneiras. Por exemplo, é possível criar um relatório para a tabela [EMPREGADOS] que busque na tabela [EMPRESAS] e exiba e imprima automaticamente a informação da empresa de cada pessoa. As relações entre as tabelas permitem que a informação de ambas as tabelas esteja disponível em um relatório.

Também é possível introduzir dados diretamente nas tabelas relacionadas. Por exemplo, um banco de faturamento pode escrever informação na tabela [Detalhe] a partir da janela Faturamento. Também é possível escrever dados em uma tabela relacionada utilizando a linguagem 4D.

 Às vezes é necessário uma estrutura de multi-tabelas na qual as tabelas não estão diretamente ligadas. Pode ser conveniente ter um banco de dados armazenando diferentes tipos de informações, tais como uma lista de contatos e uma tabela de despesas.

4D permite até 32.767 tabelas para cada banco de dados. A tabela pode ter até 32.767 campos. Usando tabelas múltiplas, virtualmente qualquer tipo de estrutura de banco de dados é possível.

Em geral, você necessitará criar estruturas nas quais as tabelas compartam informação sobre seus empregados e suas empresas. A estrutura do banco, representada a seguir, contém um tabelas [EMPREGADOS] para armazenar as informações relativas aos empregados e uma tabela [EMPRESAS] para armazenar a informação relativa às empresas.

Ainda que útil, a informação armazenada em cada tabela separadamente não responde completamente a suas necessidades. Quando se visualiza um registro a partir da tabela [EMPREGADOS], você deve poder acessar a informação sobre a empresa para qual o empregado trabalha e quando olha um registro da tabela [EMPRESAS], necessita poder ver a informação sobre os empregados que trabalham para esta empresa.

Para permitir duas tabelas compartir informação desta maneira, as tabelas podem estar relacionadas entre elas, em outras palavras, uma relação pode ser estabelecida entre os dados de cada tabela. 

Em 4D, as relações permitem acessar aos dados armazenados em uma tabela a partir de outra tabela. As tabelas que compartem informação por meio de uma relação se chamam tabelas relacionadas.

As tabelas relacionadas lhe permitem:

  • armazenar dados eficientemente,
  • atualizar os dados em um lugar e ver a alteração refletida em todas as partes onde se utilizam os dados,
  • ver informação relacionada,
  • realizar consultas e ordenações em uma tabela, com base nos dados armazenados em outra tabela,
  • Criar, modificar ou eliminar registros de tabelas relacionadas.

 A imagem a seguir mostra uma relação criada entre a tabela [EMPREGADOS] e a tabela [EMPRESAS] no editor de estrutura.

 A tabela [EMPREGADOS] contém um registro por pessoa. A tabela [EMPRESAS] contém um registro por empresa. A relação entre estas duas tabelas lhe permite acessar, introduzir, modificar ou eliminar informação das duas tabelas. Por exemplo:

  • Quando o registro de um empregado está na tela, você pode ver ou modificar a informação da empresa correspondente, o endereço, cidade, estado, código postal e o número telefônico da empresa.\
  • Quando se adiciona a uma nova pessoa, é possível associar o registro da pessoa com o registro da empresa correspondente (se a empresa já existe no banco de dados) ou criar o registro de uma nova empresa ao mesmo tempo que cria o registro do empregado. Para mais informação, consulte a seção Propriedades de Relações.
  • Para cada empresa, é possível modificar a informação de cada uma das pessoas que trabalham nela, nome, cargo, número telefônico e outros dados. Também pode adicionar um novo registro de pessoal desde o registro da empresa.

Graças aos campos relacionados, os campos que conectam duas tabelas em uma relação, você pode exibir a informação das tabelas relacionadas. O objetivo principal das relações entre os campos é indicar a 4D quais são os registros atuais de uma tabela de acordo com o registro atual da outra tabela. As tabelas relacionadas usam dois campos relacionados para identificar os registros correspondentes. No exemplo anterior, o campo Empresa da tabela [EMPREGADOS] e o campo Nome da tabela [EMPRESAS] relacionam as duas tabelas.O campo Nome na tabela [EMPRESAS] é o campo chave primária da tabela [EMPRESAS]. Este campo identifica de maneira única cada registro de empresa. Um campo chave primária deve ter os atributos Indexado e Único. Se o campo chave primária não tem o atributo Indexado, 4D o atribui automaticamente. O campo Empresa da tabela [EMPREGADOS] é um campo chave externa.

Cada valor do campo chave estrangeira corresponde a um valor exatamente igual ao campo chave primária na tabela relacionada. Neste exemplo, um valor de campo de chave estrangeira da tabela [EMPREGADOS] coincide exatamente com um valor do campo chave primária na tabela [EMPRESAS]. O campo chave estrangeira também é indexado, mas seus valores não são únicos (vários empregados poderiam trabalhar na mesma empresa).

A partir de 4D v14, os campos chaves primária devem ser definidos explicitamente em cada tabela da base.

Os valores do campo chave primária geralmente são afetados diretamente pela base utilizando um número seqüencial gerado por 4D ou por um método escrito pelo usuário. Tal procedimento garante a unicidade do campo chave. Por exemplo, se o campo chave primária da tabela [EMPRESAS] é um número seqüencial e não o nome da empresa, é possível que os usuários introduzam várias companhias com o mesmo nome, mas com endereços diferentes. Da mesma forma, se uma empresa muda de nome, o usuário pode fazer a alteração no banco de dados sem afetar a relação entre as duas tabelas.

 Se o usuário está autorizado a introduzir o valor do campo chave primária, você deve utilizar os atributos Único e Não modificável como (Armazenado em registro, arquivo de dados ou fora do arquivo de dados) para garantir a unicidade da entrada inicial e evitar que posteriormente os usuários criem um registro redundante. Se você decidir não utilizar o atributo Não modificável, terá que buscar outra forma de evitar que os usuários criem registros “órfãos” em qualquer das tabelas relacionadas ao modificar os valores do campo chave primária.

Quando se estabelecem as relações, você pode ler e escrever valores em uma tabela enquanto trabalha na tabela relacionada. Por exemplo, quando você escreve o nome de uma empresa em um registro de pessoa, 4D busca esta empresa na tabela [EMPRESAS] e mostra o endereço e o número telefônico no registro da pessoa. Quando você visualiza o registro de uma empresa, 4D busca na tabela [EMPREGADOS] todos os empregados que trabalham nesta empresa e mostra seus registros no registro da empresa.

Estas relações podem ser chamadas automaticamente (ou seja, sem programação de sua parte) ou você pode optar por usar relações manuais. Neste último caso, você utiliza os métodos para carregar e descarregar os registros relacionados e controlar a criação, modificação ou exclusão de registros relacionados. Às vezes as relações manuais são preferíveis em estruturas complicadas onde haja mais de duas tabelas relacionadas a outra e você necessite controlar a carga e descarga dos registros relacionados. Você pode escolher usar relações automáticas ao selecionar as propriedades adequadas no momento em que a relação entre as tabelas está sendo especificada (veja  Propriedades de Relações).

 
PROPRIEDADES 

Produto: 4D
Tema: Criar uma estrutura de banco de dados

 
HISTÓRIA 

 
ARTICLE USAGE

Manual de Desenho 4D ( 4D v16)
Manual de Desenho 4D ( 4D v16.1)
Manual de Desenho 4D ( 4D v16.3)