Bagaimana untuk Menyimpan Susunan Integer sebagai Medan Tunggal dalam Model Gorm Menggunakan PostgreSQL?

Susan Sarandon
Lepaskan: 2024-11-04 11:00:01
asal
902 orang telah melayarinya

How to Store an Array of Integers as a Single Field in a Gorm Model Using PostgreSQL?

Menambah Tatasusunan Integer sebagai Jenis Data dalam Model Gorm

Apabila berurusan dengan model pangkalan data, selalunya perlu menyimpan tatasusunan nilai . Dalam Gorm, ORM rasmi untuk Go, menyimpan tatasusunan integer sebagai medan tunggal dalam PostgreSQL boleh menjadi satu cabaran.

Untuk menangani isu ini, Gorm menyediakan sokongan untuk mengendalikan tatasusunan dengan menggunakan jenis tersuai daripada perpustakaan asas . Dengan memanfaatkan perpustakaan pq, anda boleh menentukan jenis tatasusunan dalam model anda.

Sebagai contoh, pertimbangkan model Gorm yang dikemas kini berikut:

<code class="go">type Game struct {
    gorm.Model
    GameCode    string
    GameName    string
    DeckType    pq.Int64Array `gorm:"type:integer[]"`
    GameEndDate string
}</code>
Salin selepas log masuk

Di sini, DeckType ditakrifkan sebagai pq.Int64Array , yang mewakili tatasusunan integer. Teg gorm:"type:integer[]" menentukan jenis PostgreSQL sebagai tatasusunan integer.

Untuk memasukkan rekod dengan tatasusunan integer, hanya tetapkan tatasusunan kepada medan DeckType:

<code class="go">dt := []int64{1, 2, 3}

db.Create(&Game{GameCode: "xxx", GameName: "xxx", DeckType: pq.Int64Array(dt), GameEndDate: "xxx"})</code>
Salin selepas log masuk

Dengan menggunakan jenis tersuai daripada pq, anda boleh menyimpan dan mendapatkan semula tatasusunan integer sebagai satu medan dengan lancar dalam model Gorm anda.

Atas ialah kandungan terperinci Bagaimana untuk Menyimpan Susunan Integer sebagai Medan Tunggal dalam Model Gorm Menggunakan PostgreSQL?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!