全部产品
Search
文档中心

Lindorm:Gunakan Python DB-API untuk mengembangkan aplikasi

更新时间:Nov 10, 2025

Topik ini menjelaskan cara menggunakan Python DB-API untuk mengembangkan aplikasi berbasis LindormTable dan menyediakan contoh.

Prasyarat

  • Python 3.7 atau versi yang lebih baru telah diinstal.

  • Alamat IP klien Anda telah ditambahkan ke daftar putih Lindorm.

Batasan

Python DB-API tidak dapat digunakan untuk terhubung ke LindormTable dari instans Lindorm Serverless.

Prosedur

  1. Jalankan perintah pip install phoenixdb untuk menginstal phoenixdb. Contoh berikut menunjukkan cara menginstal phoenixdb versi 1.2.0:

    pip install phoenixdb==1.2.0
  2. Tentukan parameter yang diperlukan untuk membuat koneksi ke database, termasuk nama database yang ingin diakses serta nama pengguna dan kata sandi untuk mengakses database tersebut.

    connect_kw_args = {'lindorm_user': '<userName>', 'lindorm_password': '<userPassword>', 'database': '<database>'}

    Deskripsi parameter

    Parameter

    Deskripsi

    lindorm_user

    Nama pengguna dan kata sandi yang digunakan untuk terhubung ke instans Lindorm.

    Jika Anda lupa kata sandi, Anda dapat mengubah kata sandi di sistem manajemen kluster LindormTable.

    lindorm_password

    database

    Nama database yang ingin Anda akses. Anda dapat terhubung ke database yang sudah ada yang memiliki izin untuk diakses.

    Jika Anda tidak menentukan database, Anda akan terhubung ke database default.

  3. Tentukan parameter database_url dan connect_kw_args untuk membuat koneksi ke database.

    database_url = '<lindorm_sql_url>'
    connection = phoenixdb.connect(database_url, autocommit=True, **connect_kw_args)

    Deskripsi parameter

    Parameter

    Deskripsi

    database_url

    Titik akhir yang digunakan untuk mengakses LindormTable menggunakan SQL. Untuk informasi selengkapnya tentang cara mendapatkan titik akhir, lihat Lihat titik akhir.

    Jika klien Anda diterapkan pada instans Elastic Compute Service (ECS) yang berada dalam virtual private network (VPC) yang sama dengan instans Lindorm Anda, Anda dapat menggunakan Titik akhir VPC untuk mengakses LindormTable. Jika tidak, aktifkan Titik akhir publik LindormTable, lalu gunakan Titik akhir publik tersebut untuk mengakses LindormTable.

    Saat Anda mengatur parameter ini ke titik akhir, hapus string sebelum http dari titik akhir yang Anda peroleh dari Konsol Lindorm.

    Contoh: database_url = 'http://ld-bp10m54739kg9****-proxy-lindorm.lindorm.rds.aliyuncs.com:30060'

    autocommit

    Tentukan apakah perintah akan dikomit secara otomatis. Parameter ini harus diatur ke True.

    **connect_kw_args

    Pengaturan parameter connect_kw_args yang ditentukan pada Langkah 2. Pengaturan ini diteruskan ke metode phoenixdb.connect() untuk membuat koneksi ke database.

  4. Setelah terhubung ke database, Anda dapat melakukan operasi DDL dan DML. Kode berikut memberikan contoh cara melaksanakan operasi tersebut:

    with connection.cursor() as statement:
        # Buat tabel.
        sql_create_table = "create table if not exists test_python(c1 integer, c2 integer, primary key(c1))"
        print(sql_create_table)
        statement.execute(sql_create_table)
    
        # Masukkan satu baris data.
        sql_upsert = "upsert into test_python(c1, c2) values(1,1)"
        print(sql_upsert)
        statement.execute(sql_upsert)
    
        # Masukkan beberapa baris data.
        with connection.cursor() as stat:
            sql_upsert = "upsert into test_python(c1, c2) values(?,?)"
            print(sql_upsert)
            stat.executemany(sql_upsert, [(2, 2), (3, 3)])
    
        # Hapus data.
        sql_delete = "delete from test_python where c1=2"
        print(sql_delete)
        statement.execute(sql_delete)
    
        # Ubah data dalam tabel.
        sql_update = "upsert into test_python(c1, c2) values(1,10)"
        print(sql_update)
        statement.execute(sql_update)
    
        # Kueri data.
        sql_select = "select * from test_python"
        print(sql_select)
        statement.execute(sql_select)
        rows = statement.fetchall()
        print(rows)
    
        # Nonaktifkan tabel. Jika versi LindormTable instans Anda lebih baru dari 2.2.16 dan lebih lama dari 2.4.1, Anda harus menonaktifkan tabel sebelum menghapusnya.
        sql_offline_table = "offline table test_python"
        print(sql_offline_table)
        statement.execute(sql_offline_table)
    
        # Hapus tabel.
        sql_drop_table = "drop table if exists test_python"
        print(sql_drop_table)
        statement.execute(sql_drop_table)
    
    # Tutup koneksi ke database.
    connection.close()
    Catatan

    Untuk kode contoh lengkap, lihat Contoh Python.

Referensi

Untuk informasi selengkapnya, lihat Referensi SQL untuk LindormTable.