[techlinux-start] Inserir dados em arq. .GDB com Kylix
Status: Planning
Brought to you by:
carloseg
|
From: <li...@gl...> - 2003-02-20 11:51:24
|
... calma, sei que t=F4 um saco vindo aqui perguntar coisas toda hora, ma=
s
=E9 que j=E1 tentei tudo que eu poderia imaginar e n=E3o conseguir solu=E7=
=E3o.
Vejam s=F3. Estou tentando fazer uma agendinha de telefones usando um ban=
co
de dados DADOS.GDB.
O problema =E9 que n=E3o t=F4 sabendo inserir um novo registro. A opera=E7=
=E3o que
fa=E7o abaixo, faz com que seja inserido
um novo registro em branco, por=E9m em vez de lan=E7ar os dados digitados=
nele,
est=E1 editando o registro sobre
o qual o ponteiro est=E1 posicionado no momento.
Algu=E9m sabe me explicar que diacho =E9 isso que t=E1 acontecendo?
Como resolvo isso?
procedure TfrmPrincipal.btnIncluirClick(Sender: TObject);
begin
Habilita;
Habilita_Botoes1;
SQLDataSet1.Active :=3D false; // Desativei isso aqui para que os DBE=
dit's
ficassem desconectados para que
DBEdit1.Clear; // eu pudesse entrar novos dados=
.
Sen=E3o iria editar um registro j=E1 existente.
DBEdit2.Clear;
DBEdit3.Clear;
DBEdit4.Clear;
DBEdit5.Clear;
DBEdit6.Clear;
DBEdit7.Clear;
cOperacao :=3D 'I';
DBEdit1.SetFocus;
end;
procedure TfrmPrincipal.btnSalvarClick(Sender: TObject);
begin
if DBEdit1.Text <> '' Then
begin
if MessageDlg('Salvar registro','Confirma grava=E7=E3o dos dados=
?',mtConfirmation,[mbYes,mbNo],0)
=3D mrYes Then
begin
SQLDataSet1.SQLConnection.ExecuteDirect('INSERT INTO DADOS=
(NOME, ENDERECO, CIDADE, FONE_RESIDENCIAL, FONE_CELULAR, FONE_COMERCIAL,
CONTATO) VALUES(NULL,NULL,NULL,NULL,NULL,NULL,NULL)');
SQLDataSet1.Active :=3D true;
ClientDataSet1.ApplyUpdates(-1);
end;
end
else
begin
MessageDlg('Campo n=E3o preenchido','Preenchimento obrigat=F3rio=
do
campo nome!',mtError,[mbOk],0);
ClientDataSet1.CancelUpdates;
end;
SQLDataSet1.Active :=3D true;
Desabilita;
Habilita_Botoes2;
end;
|