View a markdown version of this page

Batasan prosedur yang disimpan - Amazon Redshift

Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog yang diterbitkan pada 30 Juni 2025.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Batasan prosedur yang disimpan

Topik ini menjelaskan batasan untuk prosedur tersimpan Amazon Redshift.

Pertimbangan berikut berlaku saat Anda menggunakan prosedur tersimpan Amazon Redshift.

Perbedaan antara Amazon Redshift dan PostgreSQL untuk dukungan prosedur tersimpan

Berikut ini adalah perbedaan antara dukungan prosedur tersimpan di Amazon Redshift dan PostgreSQL:

  • Amazon Redshift tidak mendukung subtransaksi, dan karenanya memiliki dukungan terbatas untuk blok penanganan pengecualian.

Pertimbangan dan batasan

Berikut ini adalah pertimbangan tentang prosedur tersimpan di Amazon Redshift:

  • Jumlah maksimum prosedur tersimpan untuk database adalah 10.000.

  • Ukuran maksimum kode sumber untuk prosedur adalah 2 MB.

  • Jumlah maksimum kursor eksplisit dan implisit yang dapat Anda buka secara bersamaan dalam sesi pengguna adalah satu. Loop FOR yang mengulangi kumpulan hasil pernyataan SQL membuka kursor implisit. Kursor bersarang tidak didukung.

  • Kursor eksplisit dan implisit memiliki batasan yang sama pada ukuran set hasil seperti kursor Amazon Redshift standar. Untuk informasi selengkapnya, lihat Kendala kursor.

  • Jumlah maksimum level untuk panggilan bersarang adalah 16.

  • Jumlah maksimum parameter prosedur adalah 32 untuk argumen input dan 32 untuk argumen output.

  • Jumlah maksimum variabel dalam prosedur tersimpan adalah 1.024.

  • Setiap perintah SQL yang memerlukan konteks transaksinya sendiri tidak didukung di dalam prosedur tersimpan. Contohnya adalah:

    • MEMPERSIAPKAN

    • CREATE/DROP DATABASE

    • CREATE EXTERNAL TABLE

    • VAKUM

    • MENGATUR LOKAL

    • UBAH TABEL DITAMBAHKAN

  • Pang registerOutParameter gilan metode melalui driver Java Database Connectivity (JDBC) tidak didukung untuk tipe refcursor data. Untuk contoh penggunaan tipe refcursor data, lihatMengembalikan hasil set dari prosedur tersimpan.