Einbindung SQL-Skripte

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
Holger_MD
Beiträge: 1
Registriert: Mi 31. Jul 2013, 23:28

Einbindung SQL-Skripte

Beitrag von Holger_MD »

Hallo zusammen, ich habe ein Problem mit SQL Skripten die Hochkommas enthalten. Ich greife mit TOracleConnection auf eine Oracle DB zu, da ich etliche Abfragen habe hab ich jede in ein eigenes Script File ausgelagert. Diese werden in eine*.res kompiliert und als Stream geladen. Alle Scripte ohne Hochkomma's werden problemlos ausgeführt. Bei diesem habe ich schon mit nur einmal Hochkomma, 2x Hochkomma wie im Quote und mit Anführungsstrichen probiert. Wie muss die Syntax im Scriptfile sein damit lazarus es sauber parst ? P.S.: Die 0 soll Text sein da in der ID Buchstaben enthalten sein können.

Code: Alles auswählen

 Aufruf:
       tmpStream := TResourceStream.Create(HInstance, 'Query05', 'TEXT');
       try
         query.SQL.LoadFromStream(tmpStream);
       finally
         tmpStream.Free;
       end;   
 

Code: Alles auswählen

SQL-Script:
SELECT  substr(ptu.ptu_coord,1,3) coord,
        ptu.ptu_ident,
        to_char(psi.psi_qtyact) psi_qtyact,
        to_char(psi.psi_qtyres) psi_qtyres,
        ptu.ptu_coord,
        case when ptu.ptu_refparent <> 0 then (SELECT DISTINCT ptu_ident FROM pstock_tu WHERE ptu_ref IN (ptu.ptu_refparent)) else ''0'' end parent_id
FROM    pstock_tu ptu,
        pstock_item psi
WHERE   ptu.ptu_ref = psi.ptu_ref
AND     psi.psi_batchno = trim(:wz)
ORDER BY ptu.ptu_coord
Zuletzt geändert von Lori am Sa 3. Aug 2013, 11:11, insgesamt 1-mal geändert.
Grund: Bitte den richtigen Highlighter nutzen.

Antworten