INTERBASE / DELPHI

SQL

03/11/2012

Eu gostaria de saber como fazer para o meu cadastro ser incluido no BD, ja fiz a ligação do DBEDIT com o BD

Dm.IBQuery.append; não está dando certo.

estou usando BD INTERBASE.

COMPONENTES:IBTRANSICTION, IBDATABASE, DATASOURCE E IBQUERY


COM o IBTABLE dava certo porem medei para o IBQUERY aí não de certo. Por gentileza alguem me ajude!
Paulo

Paulo

Curtidas 0

Respostas

Claudia Nogueira

Claudia Nogueira

03/11/2012

O IbQuery funciona completamente diferente.
Para inserir/editar registros, você usaria ele somente se não quisesse mais usar DBEdits.
Eu não uso DBEdits, nunca gostei.
Com o IbQuery pra essa finalidade, você colocaria os Edits, o IBQuery e ficaria o código mais ou menos assim:

try
with Qry do
begin
Close;
SQL.Text := 'INSERT INTO TABELA (CODIGO, NOME) VALUES (:CODIGO, :NOME)';
ParamByName('CODIGO').AsInteger := iCodigo;
ParamByName('NOME').AsString := EditNome.Text;
ExecSQL;
end;
Transacao.CommitRetaing;
except
Transacao.RoolbackRetaing;
end;
GOSTEI 0
Paulo

Paulo

03/11/2012

O IbQuery funciona completamente diferente.
Para inserir/editar registros, você usaria ele somente se não quisesse mais usar DBEdits.
Eu não uso DBEdits, nunca gostei.
Com o IbQuery pra essa finalidade, você colocaria os Edits, o IBQuery e ficaria o código mais ou menos assim:

try
with Qry do
begin
Close;
SQL.Text := 'INSERT INTO TABELA (CODIGO, NOME) VALUES (:CODIGO, :NOME)';
ParamByName('CODIGO').AsInteger := iCodigo;
ParamByName('NOME').AsString := EditNome.Text;
ExecSQL;
end;
Transacao.CommitRetaing;
except
Transacao.RoolbackRetaing;
end;



esses codigos então seria no BtnInserir? O meu cadastro tem 41 campos, então seria 41 edits? O que quer dizer "Transacao"?

e a ligação com o BD interbase como é feito?

meus componentes, são:

IBTransition, IBDatabase, IBQuery e DataSource
GOSTEI 0
POSTAR