Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Konkretes SQL-Statement von einem Dataset (https://www.delphipraxis.net/162233-konkretes-sql-statement-von-einem-dataset.html)

Tobinator 13. Aug 2011 21:16

Datenbank: Firebird • Version: 2.5 • Zugriff über: IB-Componenten

Konkretes SQL-Statement von einem Dataset
 
Hi,

wie komme ich an das konkrete SQL-Statement, was ein IBDataset an eine FB-DB sendet ran (speziell Insert, Update und Delete)?

Wenn ich einfach
Delphi-Quellcode:
MySQLStatement:=MyDataSet.InsertSQL;
ausführe, dann bekomme ich ja sowas wie
Code:
Insert into Kontakte(
KUNDENNUMMER,NAME,VORNAME,...)
Values
(:KUNDENNUMMER,:NAME,:VORNAME,...)
Ich will aber das mit den entsprechenden Werten gefüllt haben, also
Code:
Insert into Kontakte(
KUNDENNUMMER,NAME,VORNAME,...)
Values
('K.00001','Wurst','Hans',...)
Hat einer ne Idee, wie ich da ran komme?

Danke schonmal...

Tobi.

mjustin 13. Aug 2011 22:44

AW: Konkretes SQL-Statement von einem Dataset
 
Das Statement und die Parametern werden nicht in einen SQL String konvertiert, sondern getrennt (Befehl mit Platzhaltern / Parameter mit ihren Werten) an die API des Datenbankclient übergeben.

Man kann im BeforeExecute oder BeforeOpen eine Logausgabe 'zu Fuss' gestalten. OOP-mäßig kann man es durch eine Unterklasse oder einen "Dekorator" lösen, der die Logausgabe zusätzlich zu (eventuell ja schon vorhandenem) BeforeExecute / BeforeOpen ausführt (injiziert).

Tobinator 14. Aug 2011 13:53

AW: Konkretes SQL-Statement von einem Dataset
 
Ok, danke, aber ich habs jetzt anders gelöst...

(also nicht mit Datasets, sondern mit einem Query, die nötigen funktionen dazu hatte ich sowieso schon fast komplett)


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz