全部产品
Search
文档中心

AnalyticDB:pldbgapi

更新时间:Jul 02, 2025

Untuk mengembangkan atau men-debug fungsi, instal ekstensi pldbgapi, gunakan fitur debugging PL/pgSQL, lalu konfigurasikan kondisi, titik henti program, dan nilai variabel.

Pengenalan

PL/pgSQL adalah bahasa ekstensi yang digunakan untuk menulis prosedur tersimpan dan fungsi yang ditentukan pengguna (UDF) di AnalyticDB for PostgreSQL. PL/pgSQL mendukung pemrosesan dan kueri data SQL, menyediakan manajemen prosedural dan pemrograman, serta memungkinkan logika kompleks berdasarkan variabel, kondisi, loop, dan operasi pemecahan masalah.

Ekstensi pldbgapi memungkinkan Anda menggunakan fitur debugging fungsi PL/pgSQL dengan cara serupa dengan GNU Debugger (GDB) untuk men-debug program C. Ekstensi ini mendukung titik henti program, debugging langkah demi langkah, dan inspeksi nilai variabel. Dengan fitur PL/pgSQL dari ekstensi pldbgapi, Anda dapat mengembangkan dan men-debug fungsi secara lebih efisien.

Catatan Penggunaan

  • Hanya instance AnalyticDB for PostgreSQL V6.0 versi 6.3.10.19 atau lebih baru yang mendukung ekstensi pldbgapi. Untuk informasi tentang cara melihat versi mesin minor dari instance AnalyticDB for PostgreSQL, lihat Lihat versi mesin minor.

  • Anda dapat menggunakan fitur debugging fungsi PL/pgSQL pada klien pgAdmin. Kami merekomendasikan penggunaan versi 6.21 dari klien pgAdmin. Versi terbaru dari klien pgAdmin tidak kompatibel dengan AnalyticDB for PostgreSQL. Untuk informasi tentang cara mengunduh klien pgAdmin, lihat pgAdmin.

Prosedur

  1. Instal ekstensi pldbgapi di halaman Ekstensi dari instance AnalyticDB for PostgreSQL tempat Anda ingin menggunakan ekstensi tersebut. Untuk informasi lebih lanjut, lihat Instal, perbarui, dan hapus ekstensi.

  2. Sambungkan ke database AnalyticDB for PostgreSQL dan buat fungsi untuk debugging PL/pgSQL. Contoh fungsi:

    CREATE OR REPLACE FUNCTION add_numbers(a int, b int)
    RETURNS NUMERIC AS $$
    DECLARE
        t1_b_avg NUMERIC;
    BEGIN
        --DROP TABLE t1;
        CREATE TABLE t1 (a int, b int, c int, d int);
    	RAISE NOTICE 'Selesai MEMBUAT ';
        FOR i IN 1..10 LOOP
    	    INSERT INTO t1 VALUES (i, i, i, i);
    	END LOOP;
    	RAISE NOTICE 'Selesai MENYISIPKAN ';
        SELECT avg(t1.b) INTO t1_b_avg FROM t1 LIMIT 1;
    	RAISE NOTICE 'Selesai MEMILIH: rata-rata=[%] ', t1_b_avg;
    	DROP TABLE t1;
        RETURN a + b + t1_b_avg;
    END;
    $$ LANGUAGE plpgsql;
  3. Kueri data tabel untuk memverifikasi bahwa fungsi bekerja sesuai harapan.

    SELECT add_numbers(1, 3);
  4. Mulai pgAdmin. Di bilah navigasi atas, pilih Object > Register > Server.

  5. Di tab General pada halaman Register-Server, tentukan nama server. Contoh: test.

  6. Di tab Connection pada halaman Register-Server, konfigurasikan parameter yang dijelaskan dalam tabel berikut dan klik Save untuk membuat server.

    Parameter

    Deskripsi

    Host name/address

    Titik akhir publik yang digunakan untuk menyambung ke instance AnalyticDB for PostgreSQL. Untuk informasi lebih lanjut, lihat Kelola titik akhir publik.

    Port

    Nomor port yang digunakan untuk menyambung ke instance AnalyticDB for PostgreSQL.

    Maintenace database

    Nama database. Atur parameter ini ke postgres.

    Username

    Akun database dari instance AnalyticDB for PostgreSQL.

    Password

    Kata sandi akun database.

  7. Di daftar server di sebelah kiri, pilih server yang ingin Anda kelola dan pilih test > Databases > postgres > Schemas > public > Functions.

  8. Klik kanan fungsi yang ingin Anda debug dan pilih Debugging > Debug di menu pintasan.11.png

  9. Di halaman Debugger, tentukan parameter input untuk fungsi dan klik Debug. Dalam contoh ini, nilai parameter a dan b diatur ke 2, dan nilai parameter a tidak nol.12.png

  10. Di pojok kiri atas halaman, klik ikon ts.png.tstu.png

  11. Setelah debugging selesai, lihat hasil debugging di tab Messages dan Result.

    Tab Messages menampilkan pesan teks keluaran selama proses eksekusi fungsi.

    Tab Result menampilkan nilai balik setelah fungsi dieksekusi.