Buenos dias, ha ver si me podeis hechar una mano.
Como en cualquier programa, se usan sentencias sql para trabajar con firebird, por ejemplo
Código Delphi
[-]
function TFormBBDD.CreaTabla(tabla, sql: string): boolean;
var
resultado: boolean;
begin
Result := False;
if BBDDconectadoBase = False then
Exit;
if ExisteTabla(tabla) = True then
Exit;
try
SQLConnection.ExecuteDirect(sql);
BBDDstringMonitor := 'BBDD-Tabla ' + tabla + ' creada';
MonitorBBDD(BBDDstringMonitor);
resultado := True;
except
on E: Exception do
begin
resultado := False;
BBDDstringMonitor := 'BBDD-No se ha creado o alterado la tabla ' + tabla +
'. Error SQL' + #13 + #10 + E.Message;
Application.MessageBox(PChar(BBDDstringMonitor), 'Atencion', MB_OK);
MonitorBBDD(BBDDstringMonitor);
end;
end;
Result := resultado;
end;
Cuando se genera un error en la sentencia, except me devuelve el error y tal, pero, si por ejemplo la sentencia sql es
'UPDATE CIUDADES SET ALCALDE='MALO' WHERE SUELDO>10000'
¿Como se cuantas filas se ven afectadas? parece que hay un componente TSQLDataSet.ExecSQL que devuelve el resultado sobre el numero de filas afectadas, pero no encuetro la solucion usando DBxExpres (dbxfb4d14.dll y fbclient.dll)
¿Alguna idea?
Gracias