Du wirst einen Query zusammensetzen und den dann ausführen müssen. Schreiben tust du das ganze in einen String, ausführen dann mit EXECUTE.
Ich versuche mich gerade an dem schreiben einer Funktion. Jedoch erhalte ich bei einem PERFORM UPDATE xxx immer einen für mich unerklärlichen Fehler.
wobei "einheit_verteidigung" eine Variable ist. Wenn ich den UPDATE in Anführungszeichen schreiben, funktioniert es einwandfrei. Jedoch werden dann ja die Variablen nicht ersetzt (<- oder irre ich mich da).Code:PERFORM UPDATE pw_spieler_einheit SET aktionspunkte = aktionspunkte - 2 WHERE id = einheit_verteidigung;
Wo liegt nun hier der Fehler?
Geändert von progs (16.06.2007 um 09:27 Uhr)
Du wirst einen Query zusammensetzen und den dann ausführen müssen. Schreiben tust du das ganze in einen String, ausführen dann mit EXECUTE.
Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören
Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler
PostgreSQL Service & Support
--
https://www.xing.com/profile/Andreas_Kretschmer7ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
Ich mache das jetzt so und scheint zu funktionieren:
Zumindest wird kein Syntax-Fehler mehr angezeigt.Code:EXECUTE 'UPDATE pw_spieler_einheit SET aktionspunkte = (aktionspunkte - 2) WHERE id = ' || einheit_verteidigung;
Links: Tobias Bauer - IT- und Funkdienstleistungen - Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen - Funkforum
Lesezeichen