2016-12-01 5 views
1

Ich habe eine Abfrage-String in VariableExecute String-Abfrage in postgreSQL

suppose Select Now(); Ich möchte es wie SQL tun. Ich benutze

Execute 'Select Now()'; 

Aber es gibt eine Ausnahme aus

vorbereiteter Anweisung "SELECT (jetzt)" nicht

existiert und nicht zulassen, dass ich es auszuführen.

Gibt es eine Möglichkeit, das zu tun?

+0

Bitte zeigen Sie uns Ihre vollständige Funktion –

+0

Dies ist am einfachsten, den ich versuchte. Ich werde Funktion machen, wenn es ausgeführt wird. –

+0

Sie können 'execute' nicht in SQL verwenden, dies ist eine PL/pgSQL-Anweisung. Sie benötigen eine Funktion (oder ein "do" -Block) –

Antwort

1

Sie verwirren plpgsql EXECUTE:

t=# do $$ begin execute 'select now()'; end; $$; 
DO 

und SQL EXECUTE.

t=# prepare example as select now(); 
PREPARE 
t=# execute example; 
       now 
------------------------------- 
2016-12-01 10:30:15.782433+00 
(1 row) 
+0

Ich verwende pgAdmin. Wie es darin ausführt? –

+0

welche versuchen Sie zu tun - vorbereitete Anweisung oder dynamische Abfrage? .. –

0

'Select Now()' Run wie dies in pgAdmin