PostgreSQL データベースがあり、テーブル A の 1 つの列のデータを他のテーブルの列のデータに置き換えるスクリプトを作成したいと考えています。私はこの PL/PgSQL 関数を書きました:
BEGIN;
CREATE TEMPORARY TABLE tmp_table (id bigint PRIMARY KEY,
registrationnumber character varying(255));
INSERT INTO tmp_table
select id,registrationnumber from tableB;
for d in tmp_table loop
update TABLEA set registrationnumber=d.id where
registrationnumber=d.registrationnumber;
return next d;
end loop;
END;
スクリプトの何が問題になっていますか?