2016-07-13 11 views
0

テーブルの行で実行され、列情報を表示する単純なSQL関数を取得できません ここでSQL関数の外観を示します。SQL関数を実行できません

CREATE OR REPLACE FUNCTION iterators() RETURNS Void AS $$ 
DECLARE 
    t2_row call_records%ROWTYPE; 
BEGIN 
    FOR t2_row IN (SELECT timestamp,plain_crn INTO call_records limit 2) 
    LOOP 
    RAISE NOTICE t2_row.timestamp; 
    END LOOP 
END 
$$ LANGUAGE plpgsql; 

しかし、私は、コードを持っている可能性どのような構文エラーはよく分からないエラー

ERROR: syntax error at or near "t2_row" 
LINE 7:  RAISE NOTICE t2_row.timestamp; 

次続けるの?もう少し冗長なエラーログを取得したり、修正しなければならないコードの構文エラーを知ることは可能ですか?

答えて

2

ステートメントRAISEにはフォーマット文字列が必要です。それは簡単なはずですが、そこにいるはずです。

RAISE NOTICE '%', t2_row.timestamp; 
+0

@Panvel Right?ちょうどそれを見つけた。 – Noobie

+0

整数が範囲外になっています。どんな手掛かり? – Noobie

+0

@PanvelStehule。タイムスタンプ列は 'bigint'データ型です。 – Noobie

関連する問題