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

  • BDADIC
  • Propósito
  • Adicionar registros em um arquivo de um Banco de Dados.

  • Sintaxe
  • bdadic -b<banco> [-s<seguranca>] [-n<nivel>] [-O] [-i] 

    [-u] [-d] [-r] [-c] [-S]  -a<arq_ban>] [-z] -e<arq_ent> 

    [-t<tamanho>] [-l] [-o<número>] [-p]
    
    Novos => [-g] [-q]

  • Argumentos
  • -b <banco>

    indica o nome do Banco de Dados.

    -s <segurança>

    indica o código de segurança definido no esquema do Banco de Dados. Se omitido, será considerado o valor 1.

    -n <nível>

    indica a palavra de nível do usuário. Se omitido, será assumido o valor "a" (DEFAULT).

    -O

    indica que os arquivos de dados não serão verificados na abertura do Banco de Dados.

    -i

    inibe verificação de integridade.

    -u

    inibe verificação de unicidade.

    -d

    inibe consistência de dados.

    -r

    determina que será utilizado um algoritmo otimizado para inclusão dos registros no arquivo do banco de dados. Deve ser utilizada com a opção "-z".

    -c

    exclui registros duplicados sem confirmação. Esta opção deve ser usada com a opção "-r".

    -S

    determina que todos os arquivos do banco de dados sejam recarregados. Esta opção deve ser usada com a opção "-z". No compatível com a opção "-a" .

    -a <arq_ban>

    indica o nome do arquivo do Banco de Dados a ser carregado.

    -z

    indica que o arquivo será esvaziado antes de serem adicionados os registros.

    -e <arq_ent>

    indica o nome do arquivo de entrada com os registros a serem adicionados.

    -t <tamanho>

    No ambiente UNIX, é necessário somar 1 ao tamanho do registro para considerar o \n. Esta opção só deve ser usada quando não existir o "arq.d".

    -l

    indica que o registro no arquivo de entrada tem tamanho variável terminado por um caracter nova-linha (\n). Neste caso, <arq_ent> não pode ter itens binários (tipos I, D, C, P, F, B ou L).

    -o <número>

    indica a maneira de dividir os nos da árvore B em todos os índices. <número> pode ser:

    • 0 quando um nó está cheio e dividido em dois nós cheios pela metade (DEFAULT);
    • 1 quando um nó está cheio, e dividido em um cheio e um vazio (inclusão em ordem ascendente);
    • 2 quando um nó está cheio e dividido em um vazio e um cheio (inclusão em ordem descendente).
    -p imprime tempo de execução em segundos.
    -g indica que os arquivos com itens T8 serão gravados com os valores destes itens atualizados. O default é não atualizar.

    -q

    indica que devem ser adicionados os arquivos ou registros correspondentes ao itens tipos M, O e Q de um arquivo do banco. O bdadic lê o arquivo descarregado ._Sm ou <sai>.m e adiciona também os registros do arquivo se este não estiver vazio.

  • Utilização
  • Útil na adição de registros em um arquivo do banco de dados, onde o arquivo de entrada pode ser um arquivo gerado pelo do utilitário BDDESC, arquivo da linguagem COBOL, arquivo gerado pelo utilitário BDCDBF e na alteração da estrutura de um arquivo do banco de dados para reaproveitar os dados já contidos no arquivo.

    Quando o registro de entrada, for maior que o registro do arquivo do Banco de Dados, a parte excedente será ignorada. Caso contrário, este será completado com zeros binários. Exceto quando o excedente do registro a ser preenchido for uma ou parte de uma chave. Neste caso, ocorrerá um erro de operação e a execução do utilitário deve ser cancelada.

    Para solucionar este problema, deve-se alterar, no esquema do banco de dados, o tipo deste item, tirando-lhe a qualidade de chave, e então tornar a carregar o arquivo e ao final da carga incluir valores válidos para este item, descarregar o arquivo, alterar o esquema do banco de dados, devolvendo a qualidade de chave ao item e tornar a carregar o arquivo.

    Caso haja, no diretório corrente, um arquivo com nome igual ao arquivo de entrada mais a extensão ".d", contendo a descrição do arquivo de entrada, o BDADIC fará uma comparação entre esta descrição e a descrição do arquivo do banco de dados, fazendo as conversões necessárias. Este arquivo com a extensão ".d" é criado pelo utilitário BDDESC servindo para que a alteração da descrição de um arquivo do banco de dados seja efetuada com o aproveitamento de seus dados.

    A conversão de tipo de dados segue a regra a seguir:

    tipo na entrada

    tipo na saída

    U

    U,N

    N

    U,D,L,N,S,I,O,C,F,B

    S,I,P,C,D,F,B

    N,S,I,P,C,D,F,B,L

    Novas opções foram criadas para o utilitário BDADIC visando agilizar o processo de carga dos arquivos de banco de dados. As opções são as seguintes:

    bdadic [-i] [-u] [-d] [-r] [-c] [-S] 

    As opções "-i", "-u" e "- d" inibem as verificações de integridade, unicidade e consistência de dados, mas só devem ser utilizadas quando o usuário tiver absoluta certeza de que o banco de dados está íntegro. Caso contrário podem acarretar problemas para o banco de dados.

    Por default, durante a inclusão são verificadas a unicidade, a integridade e a consistência dos dados. Isto é feito para garantir que as informações armazenadas no banco de dados estejam sempre corretas, mas estas verificações gastam algum tempo para serem feitas, sendo assim fica a critério do usuário inibi-las para acelerar a carga do banco de dados.

    Estas verificações são descritas a seguir:

    integridade

    durante a inclusão de chaves estrangeiras é verificada a integridade, deste modo as entidades associadas ao arquivo que está sendo carregado são lidas para verificação da relação entre a chave importada e a chave exportada.

    unicidade

    para chave única ou primária, BDADIC verifica a unicidade do valor incluído, garantindo a não duplicidade destes valores.

    Dados

    verifica se os dados incluídos são do mesmo tipo definido no dicionário de dados.

    A opção "-r" é indicada para acelerar o processo de criação dos índices, deve ser utilizada com a opção "-z" (esvazia). Esta opção não requer maiores cuidados e é indicada para melhorar o tempo de carga dos arquivos.

    Com a opção "-r" BDADIC primeiro ordena os valores das chaves em um arquivo temporário em memória, logo após cria o arquivo de índice baseado neste arquivo temporário. Isto é feito para todos os índices, que são criados um a um separadamente.

    Sem a opção "-r" todos os arquivos de índices são criados ao mesmo tempo e de forma não ordenada, levando mais tempo para executar e podendo aumentar o tamanho dos arquivos de índices.

    Quando na carga do arquivo de índice for encontrada um valor em duplicata, BDADIC pergunta ao operador se deseja ou não deseja que o registro seja excluído, com a opção
    "-c", a resposta para esta pergunta é sempre "s", deste modo todos os registros que contém chave única ou chave estrangeira serão excluídos automaticamente.

    A opção "-S" determina que todos os arquivos do banco de dados serão recarregados. Para isso o usuário antes deve descarregar o banco de dados com a opção "-S" do utilitário BDDESC.

  • Exemplo
  • O exemplo a seguir mostra a utilização do BDADIC em uma carga a partir de um arquivo texto. É mostrado o arquivo de entrada. Seus itens correspondem ao deslocamento dos itens do arquivo tab_clie do banco de dados.

    Seja o arquivo texto cli_txt abaixo:

    123Tecnocoop Sistema

    001OpenBASE Sistemas

    098Empresa Marítimas Mar-alto

    $ bdadic -bbdemp1 -s33 -atab_clie -ecli_txt

    O exemplo a seguir utiliza o BDADIC para carregar um arquivo criado pelo BDDESC para uma alteração na estrutura incluindo-se o item tel_clie no arquivo tab_clie. E mostrado a seqüência de alteração.

    $ bddesc -bbdemp1 -s33 -atab_clie -gtab_clie.adi 

    * altera-se a descrição do arquivo no esquema do banco de dados

    $ define bdemp1.e

    $ bdadic -bbdemp -s33 -atab_clie -etab_clie.adi 

  • Consulte
  • BDDESC, BDCDBF e BDRECA.

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