All Products
Search
Document Center

Tablestore:Buat tabel pemetaan

Last Updated:Aug 07, 2026

Tablestore SDK for Python membuat tabel pemetaan untuk tabel data atau indeks pencarian yang sudah ada agar memungkinkan akses SQL ke data.

Prasyarat

  • Instal Tablestore SDK for Python dan inisialisasi client.

  • Kueri SQL memerlukan versi 5.4.2 atau yang lebih baru. Disarankan untuk menggunakan versi terbaru.

Deskripsi

Panggil metode exe_sql_query untuk mengeksekusi pernyataan CREATE TABLE dan membuat tabel pemetaan untuk tabel data atau indeks pencarian yang sudah ada.

def exe_sql_query(self, query)

Untuk tabel data, nama tabel pemetaan harus sama dengan nama tabel data. Nama bidang tidak peka huruf besar/kecil, dan tipe bidang harus sesuai dengan tipe bidang pada tabel data. Untuk indeks pencarian, Anda dapat menentukan nama tabel pemetaan serta menggunakan parameter ENGINE dan ENGINE_ATTRIBUTE untuk mengacu pada tabel data dan indeks pencarian yang bersangkutan.

Untuk informasi mengenai sintaksis, tipe bidang, dan parameter pernyataan CREATE TABLE, lihat Operasi DDL.

Contoh berikut membuat tabel pemetaan untuk tabel data example_table.

query = """
CREATE TABLE example_table (
    pk VARCHAR(1024), long_value BIGINT, double_value DOUBLE,
    string_value MEDIUMTEXT, bool_value BOOL, PRIMARY KEY(pk)
)
"""
client.exe_sql_query(query)

Parameter

Metode exe_sql_query memiliki parameter berikut.

Nama

Type

Deskripsi

query (wajib)

String

Pernyataan CREATE TABLE yang akan dieksekusi. Pernyataan ini mendefinisikan nama tabel pemetaan, bidang-bidangnya, kunci primer, dan mesin kueri. Pemetaan tabel data dan pemetaan indeks pencarian menggunakan sintaksis yang berbeda.

Contoh skenario

Buat tabel pemetaan untuk indeks pencarian

Atur ENGINE ke searchindex dan tentukan tabel data serta indeks pencarian di dalam ENGINE_ATTRIBUTE. Contoh berikut membuat tabel pemetaan example_search_table untuk indeks pencarian example_index dari tabel data example_table.

query = """
CREATE TABLE example_search_table (
    pk MEDIUMTEXT, long_value BIGINT, string_value MEDIUMTEXT
) ENGINE='searchindex'
ENGINE_ATTRIBUTE='{"index_name":"example_index","table_name":"example_table"}'
"""
client.exe_sql_query(query)

FAQ

Terjadi error Table 'instance.table' doesn't exist

Penyebab: Tabel data atau indeks pencarian yang ditentukan tidak ada. Pernyataan CREATE TABLE hanya membuat tabel pemetaan.

Solusi: Periksa nama-namanya, pastikan tabel data atau indeks pencarian tersebut tersedia, lalu eksekusi ulang pernyataan tersebut.

Terjadi error Table 'instance.table' already exists

Penyebab: Tabel pemetaan sudah ada. Pernyataan DESCRIBE atau SELECT juga dapat secara otomatis membuat tabel pemetaan yang hanya mencakup kolom kunci primer dan kolom pradefinisi.

Solusi: Untuk mencegah error pembuatan duplikat, gunakan klausa IF NOT EXISTS. Untuk mengubah tabel pemetaan yang dibuat secara otomatis, evaluasi dampaknya, hapus tabel pemetaan tersebut, lalu buat ulang.