![]() |
Datenbank: Access • Version: 2007 • Zugriff über: ADO
Wie größere SQL Statements schreiben?
Hallo :hi: ,
ich hoffe, dass ich hier in der richtigen Rubrik bin. Meine Frage ist allgemein zu SQL-Statements. Wie schreibt ihr denn größere SQL-Statements, mit mehreren Parametern usw., in Delphi? :gruebel: |
Re: Wie größere SQL Statements schreiben?
Na man trägt es in das TStrings-Objekt ein, oder man nutzt Views oder SPs.
Was genau ist deine Frage? |
Re: Wie größere SQL Statements schreiben?
Ja, sorry. Hätte ich genauer schreiben sollen.
Wie das technisch geht ist mir klar, mir geht es um die Formatierung im Quellcode. |
Re: Wie größere SQL Statements schreiben?
Ich formatier das so, daß es im Quellcode nicht stört, und beim SQL-Monitor nicht alles in einer Zeile landet.
Sprich: mit TQuery.SQL.Add() jeweils immer eine Zeile hinzufügen. Was ich definitv vermeide ist einen SQLString irgendwie zusammenzubasteln und diesen dann in die Query zu setzen, das geht nur schief, da man dann selber auf Leerzeichen und sonstiges achten muss. Sherlock |
Re: Wie größere SQL Statements schreiben?
Im Moment nehme ich auch SQL.Add() und füge das Zeile für Zeile ein. Es sieht nur im Code komisch aus, daher habe ich hier gefragt.
SQL-Strings zusammenbasteln ist natürlich nicht so toll. :mrgreen: |
Re: Wie größere SQL Statements schreiben?
Delphi-Quellcode:
query.sql.text := 'SELECT * FROM tabelle ' +
'WHERE blubb = :blubb AND ' + 'meow = :meow ' + 'ORDER BY wuppdi'; |
Re: Wie größere SQL Statements schreiben?
Ich mache es z.B. so:
Delphi-Quellcode:
begin
query := TQuery.Create(nil); try with query.sql do begin Clear; Add('SELECT'); Add(' *'); Add('FROM tabelle'); Add('WHERE'); Add(' (blubb = :blubb) AND'); Add(' (meow = :meow)'); Add('ORDER BY wuppdi'); end; query.ParamByName('meow').AsString := 'Test'; query.ParamByName('blubb').AsInteger := 123; query.Open; // Etwas tun query.Close; finally query.Free; end; end; |
Re: Wie größere SQL Statements schreiben?
Zitat:
Sherlock |
Re: Wie größere SQL Statements schreiben?
Dann halt so ;-) (pseudo code)
Delphi-Quellcode:
const crlf = #10#13
beging query.sql.text := 'SELECT * FROM tabelle' + crlf + 'WHERE blubb = :blubb AND' + crlf + 'meow = :meow' + crlf + 'ORDER BY wuppdi'; und für "+ crlf +" ein kleines template. |
Re: Wie größere SQL Statements schreiben?
Es gibt übrigens schon eine Konstane dafür sLineBreak
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:51 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 by Thomas Breitkreuz