Einzelnen Beitrag anzeigen

Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#7

AW: SQL Statement CREATE or ALTER PROCEDURE Fehler

  Alt 19. Dez 2015, 12:42
Sicher, dass :AKTJAHR von IBSQLDD als Variable und nicht als Parameter verwendet wird?
Ja, :AKTJAHR wird als Variable benutzt.

Denke mal da fehlt das

SET TERM ^ ;
am Anfang und entsprechend
SET TERM ; ^

am Ende
Das muss nur bei einem Script gemacht werden.

lass mal die umlaute und sonderzeichen in den kommentaren weg
(metadaten sind Unicode, ggf kannst du die dann mit passender connection auch ausführen, weglassen ist aber einfacher)
Danke. Genau das war es. "ö" durch "oe" getauscht und schon hat es funktioniert.

Glaube auch, dass das SET TERM da falsch ist. Ich schreibe allerdings aus anderem Grund. Du wirst doch hoffentlich nicht Generatoren / Sequences für Datenhaltung missbrauchen ? Da wimmelt es ja nur so mit gen_id, alter sequence etc. Durch solche Aktionen wird ja das ganze Firebird - Transaktions - Management aus den Angeln gehoben. Wozu das ?
Wie gesagt: SET TERM ist nicht nötig. Ich benutze zwei Zähler (Rechnungsnummer) für Eingangs- bzw. Ausgangsrechnungen. Die am Jahresanfang zurückgesetzt werden. Was das aktuelle Jahr ist merke ich mir in einer Tabelle. Sollte nachträglich noch eine rechnung für ein vergangenes Jahr erstellt werden, hole ich die maximale Rechnungsnummer und nehme dann die nächste freie. Das kann im Mehrbenutzerbetrieb schief gehen, aber im Falle einer Exception wiederhole ich den Schritt einfach. Außerdem ist dieser Fall extrem selten.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat