-2

次のクエリを実行すると

CREATE OR REPLACE FUNCTION some_function() RETURNS timestamptz AS $$ 
DECLARE         
   curtime timestamp; 
BEGIN    
   curtime := 'now';     
   INSERT INTO logtable VALUES (logtxt, curtime);    
   RETURN curtime; 
END; 

エラー表示は

エラー: "$$" またはその付近で、ドルで引用された文字列が終了していません

4

1 に答える 1

2

関数定義の最後の行がありません。END;あるべきだった後:

$$ LANGUAGE plpgsql;

これは、前の質問に対する私の回答からコピーしたためです。

PostgreSQL8.2でブロックを実行できません

答えに編集ミスをして、その線を切り落としました。また、後の例で正しく、すべてを説明しているドキュメントにリンクしているので、何が起こっているのかを理解しようとせずに、コピーして貼り付けたように見えます。

PL / PgSQLのドキュメントを読んでください。また、なぜこれを行っているのかについても考えてください。あなたが投稿したコードはあまり意味がありません、そして私はあなたが非常に逆の方法で問題を解決しようとしているのではないかと思います。達成しようとしていることを説明してみてください。

本当にこれを行う必要がある場合は、前の質問に対する私の回答の最後にあるコードを試してください。

于 2012-08-14T07:14:48.017 に答える