Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!

Acesso aos Bancos de Dados

Existem vários tipos de leitura para um arquivo de um Banco de Dados OpenBASE, conforme veremos a seguir.

Leitura por chave primária

Somente para arquivos ENTIDADE e TABELA (tipos E e T). São utilizados o comando FIND e a função FFIND ().

Leitura em cadeia

Serve para qualquer arquivo, pois atua sobre chaves secundárias. Se divide em dois tipos:

Uma cadeia é composta pelos registros que atenderam a pesquisa, ou seja, possuem um mesmo valor para um item de busca.

Leitura seqüencial

Para qualquer tipo de arquivo, independendo de chave. Utiliza-se o comando LOCATE.

Leitura direta pelo endereço

Para qualquer tipo de arquivo, ignorando a chave selecionada. Utiliza-se o comando GO.

Leitura recursiva

Para qualquer tipo de arquivo. Isto possibilita que sejam feitos vários tipos de leitura em um mesmo arquivo, sem perder o ponteiro nem o contexto das leituras anteriores. Utilizam-se os comandos SAVE e RESTORE.

Exemplo de esquema

Os exemplos dos elementos que acessam Banco de Dados OpenBASE, foram baseados no seguinte exemplo de esquema:

<< -------------------Banco de Dados parcial da Empresa----------------------->>

banco bdemp1 33 arqrecup

<< ---------------Declaração das Tabelas do Banco de Dados------------>> 

relacoes:

<< ----------------------------TABELA DE CLIENTES------------------------->>

nome: tab_clie E

registro:     id0_clie (2)     n03     << Código >>

    nom_clie         u30     << Nome >>

<< ------------------ARQUIVO DE TEXTO (OBS / CLIENTE)-------------->>

nome: tab_obsc F

registro:     id1_clie (tab_clie)     n03     << Código do Cliente >>

    obs_clie         u80     << Observação >>

<< ------------------------TABELA DE FUNCIONÁRIOS--------------------->> 

nome: tab_func E

registro:     id0_func (3)     n03     << Código >>

    nom_func         u35     << Nome >>

    dat_func         d02     << Data de Nascimento >>    

    cur_func         m04     << Curriculum >>

<< ------------------------TABELA DE VENDEDORES------------------------- >>

nome: tab_vend F

registro:     id1_func (tab_func)    n03 UNICA     << Código do Vendedor >>

    set_vend         u30     << Setor de Venda >>

    com_vend         n08,2     << Comissão >>

<< -----------------------TABELA DE DEPENDENTES------------------------->>

nome: tab_depe F

registro:     id2_func (tab_func)     n03     << Código do Responsável >>

    par_depe (0)     u10     << Grau de Parentesco >>     

    dat_depe         d02     << Data de Nascimento >>

<< ---------------------TABELA DE NOTAS FISCAIS------------------------- >>

nome: tab_nfis L

registro:     id0_nfis (1)     n03    << Número da nota >>

    cli_nfis (tab_clie)     n03     << Código do cliente >>

    ven_nfis (tab_func)     n03     << Código do vendedor >>

    tot_nfis         p10,2     << Total da nota >>

    dat_nfis         d02     << Data de Emissão >>

<< ------------------------TABELA DE PRODUTOS---------------------------- >>

nome: tab_prod E

registro:     id0_prod (2)     n03     << Código >>

    des_prod         u20     << Descrição >>

    prc_unip         p08,2     << Preço Unitário >>

    qtd_estp         n05     << Quantidade Estocada >>

    uni_medp         u01     << Unidade de medida >>

<< ----------------TABELA DE ITENS DA NOTA FISCAL----------------->>

nome: tab_item A

registro:     id0_item (0)         n06     << Código Item >>

    seq_item             n03     pos id0_item

    id1_nfis (tab_nfis)         n03     pos id0_item +3 << Código NF >>

    id1_prod (tab_prod)        n03     << Código Produto >>

    qtd_prod             i02     << Quantidade >>

<< -------------------------TABELA DO PRODUTO---------------------------->>

nome: tab_comp R

registro:     id2_prod (tab_prod)     n03     << Composto de >>

id3_prod (tab_prod)     n03     << Componente de >>

Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!