AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken create.execsql error -104 Token unknown

create.execsql error -104 Token unknown

Ein Thema von Manollo · begonnen am 22. Mär 2017 · letzter Beitrag vom 24. Mär 2017
Antwort Antwort
Manollo

Registriert seit: 22. Mär 2017
3 Beiträge
 
#1

AW: create.execsql error -104 Token unknown

  Alt 24. Mär 2017, 09:52
Was steht denn hier konkret vor dem Befüllen der Parameter in procedure_create.SQL.Text?

....
Der Fehler kann wohl auch auftreten, wenn ein SQL ungültige Zeichen enthält.

Lässt sich die Prozedur mit reinen Datenbankmitteln problemlos erstellen? Wenn nein, bitte erst dort die Fehler beheben und dann via Delphi erneut probieren.
Hallo,

ja, wie oben beschrieben kann ich das Erzeugen der Prozedur im SQL Manager ohne Probleme ausführen. Sobald ich aber in Delphi die TIBQuery erzeuge und mit dem SQL befülle bekomme ich die besagte Fehlermeldung.
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#2

AW: create.execsql error -104 Token unknown

  Alt 24. Mär 2017, 09:55
Bitte Quelltext dazu:
Zitat von nahpets:
Was steht denn hier konkret vor dem Befüllen der Parameter in procedure_create.SQL.Text?
Nicht nur den der Prozedur, sondern den, an der SQL.Text in Delphi befüllt wird.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: create.execsql error -104 Token unknown

  Alt 24. Mär 2017, 13:24
Hallo,
von welcher DB-Komponentensammlung reden wir hier eigentlich?
IBDAC hat dafür z.B. TIBCScript.

TIBQuery -> TIBScript ?



Zeig doch noch mal den ganzen Code.
Laut dem hier
http://stackoverflow.com/questions/3...om-delphi-code
müsste ParamCheck:=False vollkommen ausreichen.

Das hier ist falsch, es geht hier nicht um parametrisierte Queries.
Delphi-Quellcode:
procedure TfrmMain.IBDatabaseMKPAfterConnect(Sender: TObject);
begin
  procedure_create.ParamByName('MNR').AsString := ':MNR';
  procedure_create.ParamByName('JID').AsString := ':JID';
  procedure_create.ParamByName('DID').AsString := ':DID';
  procedure_create.ExecSQL;
end;
In meinem Link weiter oben steht noch was zu Set Term .
Les dir das noch mal durch, vielleicht ist das Semikolon ja das Problem.
Heiko

Geändert von hoika (24. Mär 2017 um 14:21 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#4

AW: create.execsql error -104 Token unknown

  Alt 24. Mär 2017, 15:18
das Problem sind die ''

Wenn du eine SP erzeugen willst, dann pramcheck=false und für alle '' am besten mit QuotedStr arbeiten...

Delphi-Quellcode:
  query.sql.add('CREATE PROCEDURE XYprod(');
  query.sql.add(' DID INTEGER,');
  query.sql.add(' JID INTEGER,');
  query.sql.add(' MNR VARCHAR(20))');
  query.sql.add('AS');
  query.sql.add('begin');
  query.sql.add(' For select trim(Journal.XY), journal.jid from journal where DID is null and journal.XY <>'+quotedstr('')+' INTO :MNR, :JID do');
  query.sql.add(' begin');
  query.sql.add(' SELECT first 1 DID from Daten where TRIM(Daten.XY) = :MNR into :DID;');
  query.sql.add(' if (:did > 1) then');
  query.sql.add(' UPDATE Journal SET DID = :DID where journal.XY = :mnr;');
  query.sql.add(' end');
  query.sql.add(' suspend;');
  query.sql.add('end');
...
  Mit Zitat antworten Zitat
Antwort Antwort

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:32 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