All Products
Search
Document Center

ApsaraDB for OceanBase (Deprecated):Kolom virtual

Last Updated:Jul 02, 2025

Topik ini menjelaskan ruang lingkup konversi operasi DDL CREATE TABLE untuk mendefinisikan kolom virtual selama migrasi data dari database Oracle ke tenant Oracle di OceanBase Database.

Sintaksis

virtual_column_definition:
kolom [ tipe_data [ COLLATE nama_kolom_pengurutan ] ]
  [ VISIBLE | INVISIBLE ]
  [ GENERATED ALWAYS ] AS (ekspresi_kolom) [ VIRTUAL ]
  [ klausa_evaluasi_edisi ] [ klausa_edisi_tidak_dapat_digunakan ]
  [ batasan_inisial [ batasan_inisial ]... ]

klausa_evaluasi_edisi:
EVALUATE USING { CURRENT EDITION | EDITION edisi | NULL EDITION }

klausa_edisi_tidak_dapat_digunakan:
[ UNUSABLE BEFORE { CURRENT EDITION | EDITION edisi } ]
[ UNUSABLE BEGINNING WITH { CURRENT EDITION | EDITION edisi | NULL EDITION } ]

DDL yang Didukung

  • Pendefinisian tipe kolom dengan menggunakan opsi nama_kolom tipe_data didukung. Untuk informasi lebih lanjut tentang konversi tipe, lihat Konversi Tipe Data.

  • Penentuan atribut visibilitas kolom dengan menggunakan opsi VISIBLE | INVISIBLE didukung. Nilai defaultnya adalah VISIBLE, yang tidak dideklarasikan.

  • Pendefinisian batasan inisial dengan menggunakan opsi batasan_inisial didukung. Untuk informasi lebih lanjut, lihat Batasan.

  • Pendefinisian kolom virtual dengan menggunakan opsi GENERATED ALWAYS AS ekspresi_kolom dan kolom tipe_data AS ekspresi_kolom didukung. Berikut adalah contohnya:

    Penting

    Pendefinisian kolom virtual dengan menggunakan opsi GENERATED ALWAYS AS identity tidak didukung. Jika opsi ini digunakan, migrasi skema layanan transmisi data akan mengabaikan opsi tersebut dan hanya memigrasikan nama bidang serta tipe.

    CREATE TABLE T (C1 CHAR, C2 CHAR GENERATED ALWAYS AS (SUBSTR(C1,1,2)));
    CREATE TABLE T (C1 CHAR, C2 CHAR AS (SUBSTR(C1,1,2)));

Klausa dan opsi yang diabaikan

Catatan

Klausa dan opsi berikut diabaikan dan tidak diselesaikan atau dikonversi ketika ditentukan dalam operasi DDL yang disinkronkan.

  • Opsi COLLATE nama_kolom_pengurutan untuk mendefinisikan pengurutan kolom.

  • Klausa klausa_evaluasi_edisi untuk menentukan edisi fungsi PL/SQL yang memiliki edisi. Edisi tersebut dipertanyakan selama resolusi nama fungsi.

  • Klausa unusable_editions_clause untuk menentukan satu atau lebih edisi kueri. Dalam edisi-edisi ini, ekspresi kolom virtual tidak dapat digunakan untuk evaluasi kueri.