全部产品
Search
文档中心

ApsaraDB for OceanBase:Melakukan kompilasi dan debugging PL

更新时间:Jun 28, 2025

Topik ini menjelaskan cara melakukan kompilasi dan debugging objek PL.

Informasi latar belakang

PL (Procedural Language) adalah ekstensi dari SQL yang menggabungkan karakteristik bahasa pemrograman dengan pernyataan SQL. PL mengorganisir operasi data dan query dalam kode PL serta mengimplementasikan fitur kompleks menggunakan logika penilaian dan loop.

Dengan PL, Anda dapat memprogram berbagai aplikasi canggih dan mengenkapsulasi logika bisnis di dalam database. Hal ini meningkatkan abstraksi dan keamanan, mengurangi interaksi jaringan, serta mempercepat panggilan, sehingga meningkatkan kinerja.

Pengembangan program PL merupakan bagian penting dari pekerjaan pengembang layanan database. Selain mendukung pernyataan SQL, modul debugging PL juga sangat signifikan. Oleh karena itu, pengembang memerlukan area pengembangan PL dan fitur debugging selama pemrograman.

Anda dapat menggunakan pernyataan PL untuk menulis objek database seperti fungsi, prosedur tersimpan, paket, dan pemicu.

Di OceanBase Developer Center (ODC) V2.2.0 dan versi berikutnya, Anda dapat membuat, mengompilasi, menjalankan, dan men-debug objek PL serta blok anonim. Pernyataan PL dapat dikompilasi di bagian pengeditan jendela blok anonim. Anda juga dapat mengedit dan men-debug objek PL yang telah dibuat. Kami merekomendasikan penggunaan ODC versi terbaru untuk pengalaman yang lebih baik.

Misalnya, Anda ingin membuat prosedur tersimpan bernama PROC_VARCHAR2 di database GSH.

Catatan

Data yang digunakan dalam topik ini adalah contoh. Anda dapat menggantinya dengan data aktual sesuai kebutuhan.

Prasyarat

  • Tabel berikut mencantumkan informasi dukungan PL dari ODC.

    Fitur

    Objek yang didukung

    Sumber data yang didukung

    Versi yang didukung

    Kompilasi

    Fungsi, prosedur tersimpan, dan paket

    OceanBase Oracle dan OB Cloud Oracle

    V2.2.7x dan V3.0.0 dan seterusnya

    Debugging

    Fungsi, prosedur tersimpan, dan blok anonim

    OceanBase Oracle

    V3.2.3 dan seterusnya

    Menjalankan

    Fungsi dan prosedur tersimpan

    OceanBase Oracle, OB Cloud Oracle, OceanBase MySQL, OB Cloud MySQL

    V2.0.x dan seterusnya

    Fungsi dan prosedur tersimpan

    MySQL

    V5.7

    Menjalankan

    Paket dan blok anonim

    OceanBase Oracle dan OB Cloud Oracle

    V2.0.x dan seterusnya

    Perhatikan aturan berikut:

    • Jika sumber data adalah instance kluster OceanBase, Anda harus terhubung dengannya menggunakan OceanBase Database Proxy (ODP). Instance ini tidak mendukung debugging.

    • Jendela blok anonim hanya ditampilkan untuk sumber data OceanBase Oracle dan OB Cloud Oracle.

    • ODC versi sebelum V3.2.3 tidak mendukung debugging dalam arsitektur advanced RISC machine (ARM).

Kompilasi PL

  1. Buat prosedur tersimpan di jendela SQL.

    image

    CREATE OR REPLACE PROCEDURE PROC_VARCHAR2(p1 in VARCHAR2, p2 out VARCHAR2, p3 in out VARCHAR2)
    as
    v1 varchar2(64) := 'hello,oceanbase';
    begin
    dbms_output.put_line(p1);
    dbms_output.put_line(p3);
     p2 := 'hello,odc';
    end;
    
  2. Di panel navigasi sisi kiri jendela pengembangan SQL, klik ikon More di sebelah prosedur tersimpan PROC_VARCHAR2 dalam daftar prosedur tersimpan, lalu pilih Compile dalam daftar drop-down.

    image

  3. Kompilasi pernyataan PL dan lihat hasil kompilasi.

    image

Debugging PL

  1. Di panel navigasi sisi kiri jendela pengembangan SQL, klik ikon More di sebelah prosedur tersimpan PROC_VARCHAR2 dalam daftar prosedur tersimpan, lalu pilih Debug dalam daftar drop-down.

    image

  2. Atur parameter dan klik OK.

    Penting

    Untuk OceanBase Database V4.0.0 dan seterusnya, Anda harus memperoleh izin debugging sebelum melakukan debugging. Berikut adalah sintaks:GRANT DEBUG CONNECT SESSION TO GSH; GRANT DEBUG ANY PROCEDURE TO GSH;

    image

  3. Pergi ke halaman debugging dan klik Batch Execute untuk mengeksekusi pernyataan PL.

    image