atualizar banco de dados

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

ederxc
Usuário Nível 4
Usuário Nível 4
Mensagens: 619
Registrado em: 15 Set 2006 08:40
Localização: Pedreira -SP-

atualizar banco de dados

Mensagem por ederxc »

pessoal é o seguinte, quando acabo de fazer um cadastro seja em qualquer tabela e vou imprimir , simplesmente o sistema ñ acha este ultimo cadastro até eu feche o sistema e entre novamente ou seja acabei de lançar e fica inativo até que abandone e entre novamente no sistema

obs: clipper puro !
C:\Xharbour\Xdev\Fw\VSX
Avatar do usuário
Clipper
Colaborador
Colaborador
Mensagens: 1334
Registrado em: 23 Ago 2004 00:04
Localização: Recife/PE

Mensagem por Clipper »

Use no final da inclusão :

DBUNLOCK()
DBCOMMIT()

Até logo.

Marcelo
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
ederxc
Usuário Nível 4
Usuário Nível 4
Mensagens: 619
Registrado em: 15 Set 2006 08:40
Localização: Pedreira -SP-

Mensagem por ederxc »

cara seguinte o dbunlock sei que serve parav destracar o banco de dados , agora este commit .. qual é sua função ! Obrigado
C:\Xharbour\Xdev\Fw\VSX
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Cara não toh bem certo mas ele serve pra atualizar o seu cache..ou melhor descarregar ele e atualizar seus dados nos seus DBF !!

Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
Clipper
Colaborador
Colaborador
Mensagens: 1334
Registrado em: 23 Ago 2004 00:04
Localização: Recife/PE

Mensagem por Clipper »

Exatamente, ele descarrega os caches e grava os dados fisicamente.

Até logo.

Marcelo
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
ederxc
Usuário Nível 4
Usuário Nível 4
Mensagens: 619
Registrado em: 15 Set 2006 08:40
Localização: Pedreira -SP-

Mensagem por ederxc »

brigadão galara!
C:\Xharbour\Xdev\Fw\VSX
Avatar do usuário
gvc
Colaborador
Colaborador
Mensagens: 1270
Registrado em: 23 Ago 2005 10:57

Mensagem por gvc »

Aproveitando o chamado:
- dbcommit() - força a gravação dos dados que estão no buffer da máquina.
- dbunlock() - desbloquei o registro ou arquivo.

Um detalhe importante, sempre use dbcommit e depois o dbunlock().
Assim vc grava os dados e depois libera o registro para os outros usuários.
Pode parecer estranho, mas a inversão deles poder abrir um "buraco" no seu sistema. Usuário1 libera o registro e o usuário2 pega as informações antes do usuário1 atualizar os dados. Esse é um problema intermitente, vc só perceberá depois de muita "briga" com o sistema e com o usuário.
Os tempos são minimos, não dá nem um segundo, mas em informática isso é uma eternidade.
Essa é uma daquela "mancadinha" que só depois de algum tempo aprendemos.

Boa sorte.
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
Responder