postgresで関数を作成しようとしていますが、CREATEクエリは正常に実行されましたが、関数を呼び出そうとするとエラーが発生します。
CREATE OR REPLACE FUNCTION sp_generate_random_locations(
"nwclatitude" NUMERIC,
"nwclongitude" NUMERIC,
"seclatitude" NUMERIC,
"seclongitude" NUMERIC,
"type" TEXT,
"count" INTEGER,
"runid" TEXT
) RETURNS INT AS
$BODY$
DECLARE
counter INTEGER := 0 ;
id uuid := uuid_generate_v1();
responder_latitude FLOAT(5):= nwclatitude+(seclatitudenwclatitude)*RANDOM();
responder_longitude FLOAT(5):= nwclongitude+(seclongitudenwclongitude)*RANDOM();
BEGIN
LOOP
EXIT WHEN counter=count;
--some task
END LOOP;
END;
$BODY$
LANGUAGE plpgsql
SECURITY DEFINER
SET search_path = admin, pg_temp;
そして今、私が以下のコマンドで関数を呼び出そうとすると
SELECT aed_modeling.sp_generate_random_locations(“nwclatitude” := 54.42 ,”nwclongitude” := 10.05 ,”seclatitude” := 54.14, “seclongitude” := 10.48,”type” :=’mobile’ ,”count” :=4 ,”runid” := ‘94984cb0-5f69-4326-b492-34fb19c39fc3’);
しかし、私は以下のエラーが発生しています
42883: function sp_generate_random_locations(“nwclatitude” => numeric, ”nwclongitude” => numeric, ”seclatitude” => numeric, “seclongitude” => numeric, ”type” => unknown, ”count” => integer, ”runid” => unknown) does not exist
ここで何が欠けているのかわかりません。使用されている「runid」はuuidではないことに注意してください。私はそれを文字列として使用しています。変数「type」と「runid」を型キャストして::text
も機能しません。
応答が遅い、はい、コメントによると、問題は誤った二重引用符にありました。コピー&ペーストの問題。:-D
例えば “nwclatitude” := 54.42 should be "nwclatitude" := 54.42
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加