Pakej pangkalan data/sql Go menyediakan dua kaedah untuk melaksanakan pertanyaan SQL: db.Exec() dan db.Query(). Walaupun kedua-dua kaedah boleh melaksanakan penyataan SQL sewenang-wenangnya, ia berbeza dalam jenis hasil yang dipulangkan.
db.Exec() direka bentuk untuk operasi yang tidak mengembalikan baris, seperti INSERT, DELETE dan UPDATE. Ia mengembalikan objek Hasil yang memberikan maklumat tentang bilangan baris yang terjejas atau sebarang ralat yang berlaku semasa pelaksanaan.
db.Query(), sebaliknya, digunakan untuk pertanyaan yang mengembalikan baris data. Ia mengembalikan objek Rows yang boleh diulang untuk mengakses baris yang dikembalikan.
Walaupun db.Query() menyokong pernyataan yang disediakan, terdapat kes di mana menggunakan db.Exec() menawarkan khusus kelebihan:
Walaupun kelebihan db.Exec(), terdapat senario di mana kenyataan yang disediakan boleh menawarkan faedah prestasi:
Walau bagaimanapun, ia penting untuk ambil perhatian bahawa kenyataan yang disediakan datang dengan overhed mereka sendiri, seperti keperluan untuk menyediakan kenyataan secara jelas sebelum pelaksanaan. Oleh itu, adalah penting untuk menimbang kebaikan dan keburukan menggunakan pernyataan yang disediakan berdasarkan keperluan khusus permohonan anda.
Atas ialah kandungan terperinci Bilakah Saya Harus Menggunakan Penyata Disediakan dengan `db.Exec()` dan `db.Query()` Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!