Autor Beitrag
diamant
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Do 20.02.03 14:19 
Hallo zusammen

In einer bestehenden Applikation wird ein TQuery verwendet. Dieser hat den statischen SQL text "SELECT * FROM table1"

Im spätren Verlauf werden die weiteren Einschärnkungen übergeben!!

ausblenden Quelltext
1:
Query1.SQL[1]:='WHERE APPLIKATION IS NOT NULL';					


Nun wird das ganze mit einem SimpleDataSet aus der DBExpress Palette ermöglicht.

über SimpleDataset.DataSet.CommandText kann ich den SQL-Befehl definieren!

Wie kann ich später eine weitere Zeile im Quellcode einfügen oder eine bestehende Zeile verändern??
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Fr 21.02.03 08:24 
Hi
der Datentyp von CommandText ist String. Hier musst du selbst immer komplett aufbereiten.

Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
diamant Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Fr 21.02.03 10:44 
Ich glaube meine schlimmsten Befürchtungen werden wahr :(

Gibt es eine alternative Möglichkeit, den SQL string zeilenweise mit dem SimpleDataset aus der DB Express Palette aufzubauen :?: :?:
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Fr 21.02.03 12:20 
Hi
diamant hat folgendes geschrieben:
Ich glaube meine schlimmsten Befürchtungen werden wahr :(

Weiss zwar net was da so schlimm dran sein soll... :mrgreen:
diamant hat folgendes geschrieben:

Gibt es eine alternative Möglichkeit, den SQL string zeilenweise mit dem SimpleDataset aus der DB Express Palette aufzubauen :?: :?:

Ja die gibts. Du kannst doch beim Anlegen deines Formular selber ne StringList erzeugen und dort erst mal den Ursprünglichen CommandText einstellen.
Dann verwendest du diese StringList um deine SQL Anweisung aufzubauen wie bisher und weisst anschliessend CommandText wieder den kompletten Inhalt der StringList zu.
Schematisch etwa so:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
var  SQLBefehl : TStringList;
...
//Beim Formular erzeugen
SQLBefehl := TStringList.Create;
SQLBefehl.Text := SDS.CommandText;

//Deine SQL-Anweisung erzeugen wie bisher aber eben mit SQLBefehl
//und anschliessend
SDS.CommandText := SQLBefehl.Text;

//Vorm Schliessen des Formulars
SQLBefehl.Free;


Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
diamant Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Fr 21.02.03 15:02 
Vielen Dank für diese Lösung!!

Habe ein ganz ähnliche gefunden!

Statt einer Stringliste, habe ich ein String Array genommen! den könnte ich gut in eine liste umwandeln!!