Para el acceso a bases de datos trabajo con los componentes
ZEOS y también con
ODBC, hablemos de
Zeos, para grabar datos a una tabla es simple, el código que todos conocemos, primero enlazamos la base de datos con dos componentes,
ZConnection y un
ZQuery, el ingreso de datos sería a través del Query de ésta forma:
Código Delphi
[-]
procedure TForm1.btnZeosClick(Sender: TObject);
begin
with ZQuery do
begin
SQL.Add('INSERT INTO TEST(CODIGO,NOMBRE,TELEFONO) VALUES (:CODIGO,:NOMBRE,:TELEFONO)');
ParamByName('CODIGO').AsString:= 'C-89756';
ParamByName('NOMBRE').AsString:= 'CARLOS MEDRANO';
ParamByName('TELEFONO').AsString:= '8975-6146';
try
ExecSQL;
except
on E:EoleException do
begin
MessageDlg(Format('Error: %s codigo: %d', [E.message, E.ErrorCode]),
mtError, [mbOK], 0);
exit;
end;
end;
end;
end;
No puedo usar los componentes
UIB para insertar, actualizar, borrar de la misma forma que
ZEOS u
ODBC.
Con los componentes
UIB, tengo que usar
UIBDataBase para conectarme a la base de datos,
UIBTransaction para establecer una transacción, y si quiero utilizar un componente Query es un componente
UIBQuery, pero qué instrucciones usa ese componente para poder insertar datos al igual que
ZEOS, entiendo que son diferentes pero será que se puede? Lo mismo me pasa al usar un componente
UIBDataSet, aunque los enlace no puedo utilizarlos para insertar o borrar o actualizar datos. Solo puedo mostrar los existentes en un
DBGrid. He probado de muchas formas y nada me sale, como se que desconozco el tema
UIB consulto con ustedes que son los Gururs. Puede algún experto ayudarme a salir de éstas dudas? será que los componentes
UIB son solo para presentar datos en algún DBGrid es decir consultas? Saludos.
con
UIBQuery
Código Delphi
[-]
procedure TForm1.btnUIBqueryClick(Sender: TObject);
begin
UIBQuery.SQL.Add('INSERT INTO TEST(CODIGO,NOMBRE,TELEFONO) VALUES (:CODIGO,:NOMBRE,:TELEFONO)');
UIBQuery.???
...
end;
Con
UIBDataSet
Código Delphi
[-]
procedure TForm1.btnUIBdataSetClick(Sender: TObject);
begin
UIBDataset.SQL.Add('INSERT INTO TEST(CODIGO,NOMBRE,TELEFONO) VALUES (:CODIGO,:NOMBRE,:TELEFONO)');
UIBDataset.????
end;