Eine SQL-Statement nutzen, das alle Merkmale der Stored Procedure aufweist, ohne das dieses in der Datenbank definiert ist. Das ist mit "EXECUTE BLOCK" möglich:
EXECUTE BLOCK [(<inparams>)]
[RETURNS (<outparams>)] AS [<var-decls>]
BEGIN
PSQL statement(s)
END
<inparams>::=paramnametype= ? [,<inparams>]
<outparams>::=paramnametype[,<outparams>]
<var-decls>::=<var-decl>[<var-decls>]
<var-decl>::= DECLARE [VARIABLE]varnametype[=initvalue];
Beispiel: Ausgabe von 100 Sätzen mit 2 Feldern
execute block returns (NR integer,Txt varchar(100)) as declare variable i integer; begin i=0; while (i<100) do begin i=i+1; NR=i; Txt='Satz: '||i; suspend; end end
Tags: Firebird
Download einer Datei mit der TDownLoadURL - Action. Da diese Komponente DLL's des IE nutzt, braucht der Entwickler keine weiteren Einstellungen (Proxy ...) vorsehen.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls,
ExtActns;
type
TForm1 = class(TForm)
Button1: TButton;
ProgressBar1: TProgressBar;
procedure Button1Click(Sender: TObject);
private
{ Private-Deklarationen }
procedure Progress(Sender: TDownLoadURL; Progress, ProgressMax: Cardinal; StatusCode: TURLDownloadStatus; StatusText: string; var Cancel: Boolean);
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
with TDownLoadURL.Create(nil) do
try
URL := 'http://../test.txt'; // URL der Datei
Filename := '...\test.txt'; // Name der Datei
OnDownloadProgress := Progress; // Status des Downloads anzeigen
Execute;
finally
Free;
end;
end;
procedure TForm1.Progress(Sender: TDownLoadURL; Progress, ProgressMax: Cardinal; StatusCode: TURLDownloadStatus;
StatusText: string; var Cancel: Boolean);
begin
ProgressBar1.Max:=ProgressMax;
ProgressBar1.Position:=Progress;
Caption:=StatusText;
end;
end.
Tags: Delphi Delphi 2009
ab Firebird 1.5 kann man einen Trigger erstellen, der für mehrere Ereignisse zuständig ist.
Beispiel:
create trigger trigger_adressen for adressen before insert or update or delete as begin ... end
Um zu erkennen, in welche Aktion der Tabelle aufgerufen wurde, gibt es die neuen Variablen
INSERTING, UPDATING und DELETING
Beispiel:
create trigger trigger_adressen for adressen before insert or update or delete as begin if (deleting) then proc(old.ID); else proc(new.ID); end
Tags: Firebird SQL
DelForExp ist ein altes Opensource-Tool zur Formatierung von Delphi-Quellcode aus der IDE heraus. Es wurde von mir nur für Delphi 2009 und Windows Vista/7 angepasst.
Tags: Programme Freeware Delphi 2009Die neue Version funktioniert jetzt auch unter Windows 7 richtig
Tags: Programme Freeware