Incluir um registro em um arquivo do banco de dados
FBINSERT (<exp.C>, <vet.C1>, <vet.C2>)
|
<exp.C> |
Representa o nome do arquivo do banco de dados em uso. |
|
<vet.C1> |
Representa o nome de um vetor-cadeia com o nome dos itens que serão incluídos . Deve ter tamanho mínimo de 12 caracteres . Todas as chaves devem estar presentes e seus elementos devem conter apenas os nomes dos itens do arquivo referenciado. |
|
<vet.C2> |
Representa o nome de um vetor-cadeia com os valores dos itens para inclusão. Deve ter tamanho mínimo do maior item do registro. |
Insere, logicamente, um registro, antes do último registro lido. Semelhante ao comando INSERT BEFORE.
Se a inclusão for bem sucedida, retorna 0 (zero). Caso contrário, retorna um número diferente de zero referente ao erro de inclusão (DBERR ()).
Utilizada na construção de programas ou procedimentos com independência de dados e aplicação. Dispensa abertura de arquivo (USE) , necessitando apenas, que exista um banco de dados em uso.
Converte automaticamente o valor dos vetores de caracteres para o tipo do item no arquivo.
Deve haver coerência entre os elementos de <vet.C1> e <vet.C2> para que, a inclusão se dê corretamente. Isto é, o número do elemento de <vet.C1>, que tem o nome do item a ser incluído, deve corresponder ao valor do elemento de mesmo número em <vet.C2>. Esta relação é de 1 para 1.
O exemplo a seguir mostra-nos uma função para inclusão de registros no banco de dados em uso.
FUNC inc_befo
PARAMETERS arq_nom(c), reg_lis[](c), reg_buf[](c)
RETURN (FBINSERT (arq_nom, reg_lis, reg_buf)
* Retornara o codigo de erro da inclusão ou 0 (zero) se
* registro foi incluído.
O exemplo a seguir mostra-nos como utilizar esta função.
DATABASE bdemp1 33 a 2
USE tab_func
tam_reg = AFIELDS ()
DECLARE vet_reg[tam_reg] = SPACE(12)
DECLARE vet_buf[tam_reg] = SPACE(50)
tam_reg = AFIELDS (vet_reg) && Preenche vet_reg com nome dos itens.
? FBINSERT ("tab_func",vet_reg,vet_buf) && Exibirá erro de inclusão ou 0.
DECLARE, INSERT, AFIELDS(), AFILES(), FDBMESS() e FINSERT().