Kami mengalami masalah yang sama dan menghubungi AWS, yang mengonfirmasi bahwa memang ada masalah dengan alat Editor Kueri. Mereka tidak memiliki ETA kapan masalah akan diperbaiki.
Solusi 1:Gunakan psql
Kabar baiknya adalah ini akan bekerja dengan psql
. Ini adalah cuplikan dari email balasan mereka:
$ psql -h database-2.cluster-xx.us-west-2.rds.amazonaws.com -d postgres -U postgres
postgres=> CREATE OR REPLACE FUNCTION trigger_set_updated_at() RETURNS TRIGGER AS $$
postgres$> BEGIN NEW.updated_at = NOW();
postgres$> RETURN NEW;END;$$
postgres-> LANGUAGE plpgsql;
CREATE FUNCTION
Dokumentasi tentang cara menyiapkannya:https://docs.aws .amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToPostgreSQLInstance.html
Solusi 2:Gunakan API Data
Kami sudah menggunakan API Data untuk berkomunikasi dengan cluster kami, jadi bagi kami solusi paling sederhana sebenarnya adalah menggunakan AWS CLI dan rahasia database yang ada.
Anda dapat meletakkan definisi fungsi Anda di function.sql
berkas:
CREATE OR REPLACE FUNCTION increment(i integer) RETURNS integer AS $$
BEGIN
RETURN i + 1;
END;
$$ LANGUAGE plpgsql;
Kemudian jalankan di database dengan:
cat function.sql | xargs -0 aws rds-data execute-statement \
--resource-arn arn:aws:rds:eu-west-1:xxx:cluster:cluster-name \
--secret-arn arn:aws:secretsmanager:eu-west-1:xxx:secret:secret-name-xxx \
--database "database_name" \
--sql
Semoga bermanfaat, selamat mencoba!