UPDATEperintah di Amazon QLDB - Database Buku Besar Amazon Quantum (AmazonQLDB)

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

UPDATEperintah di Amazon QLDB

penting

Pemberitahuan akhir dukungan: Pelanggan yang ada akan dapat menggunakan Amazon QLDB hingga akhir dukungan pada 07/31/2025. Untuk detail selengkapnya, lihat Memigrasi QLDB Buku Besar Amazon ke Amazon Aurora Postgre. SQL

Di AmazonQLDB, gunakan UPDATE perintah untuk memodifikasi nilai satu atau lebih elemen dalam dokumen. Jika elemen tidak ada, itu dimasukkan.

Anda juga dapat menggunakan perintah ini untuk secara eksplisit menyisipkan dan menghapus elemen tertentu dalam dokumen, mirip FROM(INSERT,REMOVE, atauSET) dengan pernyataan.

catatan

Untuk mempelajari cara mengontrol akses untuk menjalankan perintah PartiQL ini pada tabel tertentu, lihat. Memulai dengan mode izin standar di Amazon QLDB

Sintaks

UPDATE-SET

Perbarui satu atau lebih elemen dalam dokumen. Jika elemen tidak ada, itu dimasukkan. Ini secara semantik sama dengan FROM- SET pernyataan.

UPDATE table_name [ AS table_alias ] [ BY id_alias ] SET element = data [, element = data, ... ] [ WHERE condition ]

UPDATE-INSERT

Masukkan elemen baru dalam dokumen yang ada. Untuk menyisipkan dokumen tingkat atas baru ke dalam tabel, Anda harus menggunakanINSERT.

UPDATE table_name [ AS table_alias ] [ BY id_alias ] INSERT INTO element VALUE data [ AT key_name ] [ WHERE condition ]

UPDATE-REMOVE

Hapus elemen yang ada dalam dokumen, atau hapus seluruh dokumen tingkat atas. Yang terakhir secara semantik sama dengan sintaks tradisionalDELETE.

UPDATE table_name [ AS table_alias ] [ BY id_alias ] REMOVE element [ WHERE condition ]

Parameter

table_name

Nama tabel pengguna yang berisi data yang akan dimodifikasi. DMLpernyataan hanya didukung dalam tampilan pengguna default. Setiap pernyataan hanya dapat berjalan pada satu tabel.

AS table_alias

(Opsional) Alias yang ditentukan pengguna yang berkisar di atas tabel yang akan diperbarui. ASKata kunci adalah opsional.

OLEH id_alias

(Opsional) Alias yang ditentukan pengguna yang mengikat bidang id metadata setiap dokumen dalam kumpulan hasil. Alias harus dinyatakan dalam UPDATE klausa menggunakan kata kunci. BY Ini berguna ketika Anda ingin memfilter pada ID dokumen saat menanyakan tampilan pengguna default. Untuk informasi selengkapnya, lihat Menggunakan klausa BY untuk menanyakan ID dokumen.

element

Elemen dokumen yang akan dibuat atau dimodifikasi.

data

Nilai baru untuk elemen.

DI key_name

Nama kunci yang akan ditambahkan dalam dokumen yang akan dimodifikasi. Anda harus menentukan yang sesuai VALUE bersama dengan nama kunci. Ini diperlukan untuk memasukkan nilai baru posisi AT tertentu dalam dokumen.

WHERE condition

Kriteria seleksi untuk dokumen yang akan dimodifikasi.

catatan

Jika Anda menghilangkan WHERE klausa, maka semua dokumen dalam tabel dimodifikasi.

Nilai yang dikembalikan

documentId— ID unik dari setiap dokumen yang Anda perbarui.

Contoh

Perbarui bidang dalam dokumen. Jika bidang tidak ada, itu dimasukkan.

UPDATE Person AS p SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE p.GovId = '111-22-3333'

Filter pada bidang id metadata dokumen yang ditetapkan sistem.

UPDATE Person AS p BY pid SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE pid = 'documentId'

Timpa seluruh dokumen.

UPDATE Person AS p SET p = { 'FirstName' : 'Rosemarie', 'LastName' : 'Holloway', 'DOB' : `1977-06-18T`, 'GovId' : '111-22-3333', 'GovIdType' : 'Driver License', 'Address' : '4637 Melrose Street, Ellensburg, WA, 98926' } WHERE p.GovId = '111-22-3333'

Ubah PersonId bidang elemen pertama dalam Owners.SecondaryOwners daftar dalam dokumen.

UPDATE VehicleRegistration AS r SET r.Owners.SecondaryOwners[0].PersonId = 'abc123' WHERE r.VIN = '1N4AL11D75C109151'

Masukkan {'Mileage':26500} sebagai pasangan nama-nilai tingkat atas dalam dokumen dalam tabel. Vehicle

UPDATE Vehicle AS v INSERT INTO v VALUE 26500 AT 'Mileage' WHERE v.VIN = '1N4AL11D75C109151'

Tambahkan {'PersonId':'abc123'} sebagai pasangan nama-nilai di Owners.SecondaryOwners bidang dokumen dalam tabel. VehicleRegistration Perhatikan bahwa Owners.SecondaryOwners harus sudah ada dan harus berupa tipe data daftar agar pernyataan ini valid. Jika tidak, kata kunci AT diperlukan dalam INSERT INTO klausa.

UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE { 'PersonId' : 'abc123' } WHERE r.VIN = '1N4AL11D75C109151'

Masukkan {'PersonId':'abc123'} sebagai elemen pertama dalam Owners.SecondaryOwners daftar yang ada dalam dokumen.

UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE {'PersonId' : 'abc123'} AT 0 WHERE r.VIN = '1N4AL11D75C109151'

Tambahkan beberapa pasangan nama-nilai ke Owners.SecondaryOwners daftar yang ada dalam dokumen.

UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners << {'PersonId' : 'abc123'}, {'PersonId' : 'def456'} >> WHERE r.VIN = '1N4AL11D75C109151'

Hapus elemen yang ada dalam dokumen.

UPDATE Person AS p REMOVE p.Address WHERE p.GovId = '111-22-3333'

Hapus seluruh dokumen dari tabel.

UPDATE Person AS p REMOVE p WHERE p.GovId = '111-22-3333'

Hapus elemen pertama dari Owners.SecondaryOwners daftar dalam dokumen dalam VehicleRegistration tabel.

UPDATE VehicleRegistration AS r REMOVE r.Owners.SecondaryOwners[0] WHERE r.VIN = '1N4AL11D75C109151'

Berjalan secara terprogram menggunakan driver

Untuk mempelajari cara menjalankan pernyataan ini secara terprogram menggunakan QLDB driver, lihat tutorial berikut di Memulai dengan driver: