
Adicionar registros em um arquivo de um Banco de Dados.
bdadic -b<banco> [-s<seguranca>] [-n<nivel>] [-O]
[-i] [-u] [-d] [-j] [-c] [-S] -a<arq_ban>] [-z] -e<arq_ent>
[-t<tamanho>] [-l] [-o<número>] [-p] [-g] [-q]
| -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 omitida, será assumido o valor "a". |
| -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. |
| -j |
exclui registros duplicados num arquivo tipo 'R' após sua classificação. Esta opção deve ser usada com a opção "-a" e "-e". |
| -c |
ao excluir registros duplicados solicita confirmação. Esta opção deve ser usada com a opção "-j". |
| -S |
determina que todos os arquivos do banco de dados sejam recarregados. Esta opção deve ser usada com a opção "-z". É incompatí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 nós da árvore B em todos os índices. <número> pode ser:
|
| -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. |
Ú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 para backup ou 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] [-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. |
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.
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:
123OpenBase Sistemas
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
BDDESC e BDRECA.
