Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Mengendalikan Data JSONB dengan Cekap dalam Gorm Tanpa Menggunakan postgres.Jsonb?

Bagaimanakah Saya Boleh Mengendalikan Data JSONB dengan Cekap dalam Gorm Tanpa Menggunakan postgres.Jsonb?

Susan Sarandon
Lepaskan: 2024-11-25 03:36:11
asal
717 orang telah melayarinya

How Can I Efficiently Handle JSONB Data in Gorm Without Using postgres.Jsonb?

Menggunakan JSONB dengan Gorm dan Postgres Tanpa postgres.Jsonb

Apabila bekerja dengan Postgres di Golang, selalunya perlu memanipulasi jenis data JSONB. Gorm, perpustakaan ORM (Pemetaan Objek-Kaitan) untuk Go, menyediakan API yang mudah untuk berinteraksi dengan pangkalan data. Walau bagaimanapun, pendekatan lalainya untuk mengendalikan JSONB memerlukan penggunaan jenis postgres.Jsonb khusus.

Untuk mengelak daripada menggunakan jenis ini secara langsung dalam model, pertimbangkan untuk menggunakan pgtype.JSONB sebaliknya. Jenis ini ditawarkan oleh pakej pgtype, yang merupakan perpustakaan pendamping kepada pgx, pemacu asas Gorm. pgtype menyediakan cara yang lebih fleksibel dan cekap untuk bekerja dengan data JSONB.

Pelaksanaan

Dalam struct Go anda, tentukan medan untuk menyimpan data JSONB seperti berikut:

type User struct {
    gorm.Model
    Data pgtype.JSONB `gorm:"type:jsonb;default:'[]';not null"`
}
Salin selepas log masuk

Membaca dan Menulis Data JSONB

Untuk mendapatkan semula data JSONB daripada pangkalan data:

u := User{}
db.Find(&u)

var data []string

err := u.Data.AssignTo(&data)
if err != nil {
    // Handle error
}
Salin selepas log masuk

Untuk menetapkan data JSONB untuk kemas kini:

u := User{}

err := u.Data.Set([]string{"abc", "def"})
if err != nil {
    // Handle error
}

db.Updates(&u)
Salin selepas log masuk

Menggunakan pgtype.JSONB menawarkan alternatif yang lebih baik untuk memanipulasi data JSONB dalam Gorm. Dengan menggunakan jenis secara langsung, anda mengelakkan had dan kemungkinan komplikasi bekerja dengan postgres.Jsonb.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengendalikan Data JSONB dengan Cekap dalam Gorm Tanpa Menggunakan postgres.Jsonb?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan