Arquivo da tag: access

Data Manager – Banco de Dados, Tabelas, Índices, Relacionamentos e Chaves Primárias

Criando um Banco de Dados

Para criar um banco de dados com o Data Manager, execute o Data Manager e selecione a opção File/New Database no menu principal. Um diálogo no padrão Salvar Como será aberto solicitando o nome do arquivo. Informe o nome do banco de dados que deseja criar, por exemplo Controle. A janel Tables/QueryDefs da figura abaixo surge; seu banco de dados já está criado e você está pronto para criar suas tabelas.

Criando uma Tabela

Para criar uma tabela com o Data Manager, proceda da seguinte forma: clique no botão New da janela Tables/QueryDefs e no diálogo Add Table mostrado abaixo.

Siga os seguintes passos:

  1. Informe o nome da tabela na caixa de texto Name
  2. Informe o nome do campo na caixa de texto Field Name
  3. Selecione o tipo de dado apropriado na caixa de combinação Data Type
  4. Digite o tamanho do campo, no caso do tipo Text, na caixa de texto Size
  5. Clique no botão > para incluir o campo na tabela
  6. Repita os passos 2 a 5 até que todos os campos da tabela estejam definidos e clique no botão OK para criá-la.

Alterando a Estrutura de uma Tabela

Para definir propriedades não obrigatórias de uma tabela, clique no botão Design da janela Tables/QueryDefs. O Data Manager abrirá a janela Table Editor, mostrada na figura abaixo.

Na janela Editor você pode:

  • Editar as propriedades de qualquer campo selecionado. Neste caso, os dados existentes serão perdidos.
  • Adicionar e remover campos.
  • Criar, remover e alterar índices.

Para definir as propriedades opcionais dos campos de uma tabela, selecione o campo e clique no botão Edit da janela Table Editor. O Data Manager abrirá a janela abaixo. Basta alterar as propriedades desejadas para o campo editado.

Obs.: O Data Manager não admite a edição de um campo componente de uma expressão de índice ou de um relacionamento. Nestes casos, é obrigatória a remoção do índice ou do relacionamento.

Criando e Editando Índices

A criação de um índice de uma tabela no Data Manager é simples. Basta selecionar a janela Table Editor, clicar no botão Indexes e seguir os passos:

  1. Informar o nome do índice na caixa de texto Index Name
  2. Definir as propriedades do índice, marcando as caixas de verificação apropriadas
  3. Selecionar os campos componentes na caixa de listagem apropriada
  4. Selecionar a ordem do índice, se ascendente ou descendente, clicando no botão de comando indicado

Definindo Relacionamentos

Para visualizar ou definir relacionamentos entre os campos das tabelas de um banco de dados, clique no botão Relations na janela Tables/QueryDefs e siga os passos:

  • Selecione a tabela primária na caixa de combinação Primary Table
  • Selecione a tabela dependente na caixa de combinação Related Table
  • Defina o tipo de relacionamento, selecionando o botão de opção apropriado na caixa de grupo Type
  • Selecione a chave externa na caixa de combinação Select Matching Fields
  • Marque, se for o caso, a caixa de verificação indicando se a integridade referencial dos dados deve ser garantida]

Obs.: Para definir um relacionamento, é indispensável que o campo origem seja a chave primária da tabela primária. Além disso, o campo definido como chave externa deve ser do mesmotipo de dado da chave primária.

Definindo uma Chave Primária

Para definir uma chave primária, selecione o botão Keys (janela Table Editor) e o Data Manager abre o diálogo mostrado na figura abaixo, onde a chave pode ser definida clicando-se e selecionado-a da lista Primary.

Banco de Dados: Introdução

Podemos entender por banco de dados qualquer sistema que reúna e mantenha organizada uma série de informações relacionadas a um determinado assunto em uma determinada ordem.

A lista telefônica é um exemplo. Nela, percebemos que todos os dados referentes a uma pessoa estão na mesma linha. A isso chamamos registros.

O tipo ou categoria da informação (nome, telefone, etc.) sobre uma pessoa está separada em colunas, as quais chamamos campos.

Um Sistema Gerenciador de Banco de Dados Relacionais (SGBDR) é usado para armazenar as informações de uma forma que permita às pessoas examiná-las de diversas maneiras.

O Gerenciador Relacional de Bancos de Dados do Visual Basic e do Access é o Microsoft Jet. Ele pertence a uma categoria diferente dos gerenciadores tradicionais, como o Dbase e o Paradox, pois possui características em comum com os bancos de dados cliente-servidor. Tais características comuns são:

  • Todas as tabelas, índices, consultas, relatórios e código são armazenados num único arquivo MDB
  • Os campos de data suportam informação de hora
  • Admite o armazenamento permanente de comandos SQL
  • É possível forçar a integridade referencial entre tabelas
  • Os campos suportam valores nulos (Null)

No Dbase/Clipper, banco de dados significa um arquivo que contém a estrutura de dados (campos) e os dados (arquivo padrão DBF). Para o padrão MDB, este conjunto de dados e sua estrutura denomina-se Tabela.

Portanto, aquilo que o Dbase/Clipper considera um banco de dados, o Access e o Visual Basic consideram como uma tabela.

Podemos então definir tabela como um conjunto de dados dispostos em forma de linhas e colunas. Como exemplo, vejamos a tabela de endereços abaixo:

Nome Endereço Telefone
Carlos Lima Bueno Rua Pindamonhangaba , 1200 226-2356
Carlos Lima Buel Rua Voluntários de São Paulo , 2785 224-1078
Carlos Luiz Moraes Rua D. Pedro II , 123 223-0991

As linhas da tabela são os registros (nome, endereço, telefone) e as colunas são os campos. A interseção de uma linha com uma coluna define um atributo representando um valor do campo. Para a tabela representada acima, a interseção da segunda linha com a coluna nome define o valor do campo nome como Carlos Lima Buel.

Para o Access e o Visual Basic, todos os componentes do sistema estão em um único arquivo com extensão MDB. A este “pacote” consideramos o banco de dados, o qual é um conjunto das tabelas nele contidas.

Logo, quando abrimos um arquivo MDB, temos acesso a todos os componentes do sistema: tabelas, consultas, macros, relatórios, etc. A esses componentes chamamos objetos do sistema e em resumo, podemos descrevê-los a seguir:

Tabelas Onde armazenamos as informações que queremos tratar
Consultas Filtram as informações das tabelas e permitem sua visualização.Geralmente são comandos SQL
Formulários São janelas destinadas à edição e visualização dos dados
Relatórios Organizam os dados de tabelas e consultas de uma maneira que possam ser impressos
Macros Rotinas que automatizam determinadas tarefas sem necessidade de programação (utilizadas no Access)
Módulos Armazenam instruções e comandos da linguagem Access Basic/VBA e permitem melhorar e expandir os recursos do sistema

Obs.: Embora o Visual Basic utilize arquivos padrão MDB, formulários, relatórios e módulos são tratados de forma diferente pelo próprio Visual Basic e, nativamente, o Visual Basic não utiliza Macros. Além disso, no Access e Visual Basic, podemos utilizar outros arquivos além dos arquivos MDB, como arquivos DBF do Dbase/Clipper, arquivos do Paradox, do Btrieve, etc.

Os recursos de definição de dados do mecanismo Jet permitem a criação, a modificação e a exclusão de tabelas, índices e consultas. O Jet também aceita a validação de dados em nível de campo e registro. A integridade de dados tem suporte sob a forma de chaves primárias e integridade referencial entre tabelas.

Para manipulação de dados, o Jet admite o uso da SQL e de objetos de acesso aos dados. Esses objetos permitem ao programador manipular informações contidas no banco de dados através da definição das propriedades dos objetos e pela execução dos métodos associados aos objetos. A tabela abaixo relaciona esses objetos e descreve resumidamente suas funções:

Objeto Descrição
DBengine O objeto que referencia o mecanismo de bancos de dados do Microsoft Jet
Workspace Uma área na qual o usuário pode trabalhar com os bancos de dados
Database Uma coleção de informações organizadas em tabelas, juntamente com informações a respeito de índices e relações sobre as tabelas
TableDef Uma definição da estrutura física de uma tabela de dados
QueryDef Uma consulta armazenada de SQL das informações contidas no banco de dados.
Recordset Uma coleção de registros de informações sobre um único tópico
Field Uma única unidade de informações em um banco de dados
Index Uma lista ordenada de registros em um recordset, baseada em um campo chave definido
Relation Informações armazenadas a respeito do relacionamento entre duas tabelas