Rumah pangkalan data tutorial mysql Pengaturcaraan pangkalan data MySQL menggunakan bahasa Go: dari pemula hingga mahir

Pengaturcaraan pangkalan data MySQL menggunakan bahasa Go: dari pemula hingga mahir

Jun 17, 2023 pm 07:16 PM
mysql pengaturcaraan pergi bahasa

Dengan perkembangan Internet, pangkalan data telah menjadi salah satu cara utama untuk menyimpan data. Sebagai pangkalan data hubungan sumber terbuka, mudah digunakan dan berkuasa, MySQL telah menjadi standard untuk pembangunan Internet hari ini. Sebagai bahasa pengaturcaraan yang pantas dan cekap, bahasa Go digemari oleh semakin ramai pembangun. Jadi bagaimana untuk menggabungkan keduanya untuk pengaturcaraan pangkalan data MySQL? Artikel ini akan menerangkannya kepada anda dari pemula hingga mahir.

1 Pasang dan sediakan persekitaran pembangunan bahasa Go

Tapak web rasmi bahasa Go menyediakan program pemasangan untuk pelbagai sistem pengendalian Anda boleh memilih program pemasangan yang sesuai untuk pemasangan mengikut sistem pengendalian anda versi. Selepas pemasangan selesai, anda perlu menetapkan pembolehubah persekitaran yang berkaitan dengan bahasa Go. Operasi khusus adalah seperti berikut:

1. Set GOROOT

GOROOT ialah laluan pemasangan bahasa Go Di bawah sistem Windows, anda perlu menambah laluan pemasangan bahasa Go pada pembolehubah persekitaran. Di bawah sistem lain, anda perlu menetapkan GOROOT kepada laluan pemasangan bahasa Go.

2. Tetapkan GOPATH

GOPATH ialah direktori kerja bahasa Go, iaitu laluan tempat kod Go disimpan. Jika GOPATH tidak ditetapkan, bahasa Go akan mencipta direktori baharu bernama Go dalam direktori utama pengguna semasa secara lalai dan menggunakannya sebagai GOPATH. Oleh itu, adalah disyorkan untuk menetapkan GOPATH untuk mengelakkan konflik dengan direktori yang digunakan oleh bahasa pembangunan lain.

2. Pasang MySQL

Memandangkan tiada sokongan terbina dalam untuk MySQL dalam bahasa Go, anda perlu menggunakan pemacu pihak ketiga untuk mengakses MySQL. Sebelum menggunakan pemacu pihak ketiga, anda perlu memasang pangkalan data MySQL. Kaedah pemasangan pangkalan data MySQL adalah sangat fleksibel dan tidak akan diterangkan di sini.

3. Pasang pemacu MySQL

Terdapat banyak pemacu MySQL pihak ketiga dalam bahasa Go yang biasa digunakan termasuk go-sql-driver/mysql dan mysql-orm go- Mengambil sql-driver/mysql sebagai contoh, berikut ialah langkah pemasangan:

1 Masukkan arahan berikut dalam terminal atau alat baris arahan:

go get -u github .com/go- sql-driver/mysql

2. Selepas muat turun selesai, import modul dalam kod:

import "github.com/go-sql-driver/mysql "

4. Sambung ke pangkalan data MySQL

Sebelum menggunakan pemacu MySQL, anda perlu mewujudkan sambungan yang sepadan. Seterusnya, kami akan menunjukkan cara menggunakan kod bahasa Go untuk menyambung.

1. Cipta fail main.go

Buat fail main.go baharu dalam editor teks terbuka.

2. Import modul yang diperlukan

Import modul yang diperlukan pada permulaan fail main.go:

pakej utama

import (

"fmt"
"database/sql"
_ "github.com/go-sql-driver/mysql"
Salin selepas log masuk

)

3. Wujudkan sambungan

Tambah kod berikut dalam fail main.go untuk mewujudkan sambungan dengan pangkalan data MySQL:

func main () {

db, err := sql.Open("mysql", "username:password@tcp(127.0.0.1:3306)/dbname?charset=utf8")
if err != nil {
    fmt.Println("open mysql failed,", err)
    return
}
defer db.Close()
fmt.Println("connect to mysql success")
Salin selepas log masuk

}

Antaranya, nama pengguna ialah nama pengguna MySQL, kata laluan ialah kata laluan MySQL, dbname ialah nama pangkalan data yang hendak disambungkan, tcp ialah protokol, 127.0.0.1 ialah alamat IP, 3306 ialah nombor port, set aksara Set aksara yang dinyatakan ialah utf8.

5. Laksanakan pertanyaan SQL dan operasi sisipan

Selepas berjaya menyambung ke pangkalan data, kami boleh menggunakan kod bahasa Go untuk melaksanakan pertanyaan SQL dan operasi memasukkan. Di bawah kami akan menerangkan pertanyaan dan operasi sisipan secara berasingan.

1. Laksanakan operasi pertanyaan SQL

Sangat mudah untuk melaksanakan operasi pertanyaan SQL menggunakan kod bahasa Go dan hanya memerlukan beberapa baris kod untuk diselesaikan. Contohnya, tanya semua data dalam jadual pengguna:

func main() {

// 建立连接

rows, err := db.Query("SELECT * FROM user")
if err != nil {
    fmt.Println("query data failed,", err)
    return
}
defer rows.Close()

for rows.Next() {
    var id int
    var name string
    var age int
    err := rows.Scan(&id, &name, &age)
    if err != nil {
        fmt.Println("get data failed,", err)
        continue
    }
    fmt.Println(id, name, age)
}
Salin selepas log masuk

}

2 Lakukan operasi sisipan SQL

Gunakan Go kod bahasa Menjalankan operasi sisipan SQL juga sangat mudah dan hanya memerlukan beberapa baris kod untuk diselesaikan. Contohnya, masukkan data baharu ke dalam jadual pengguna:

func main() {

// 建立连接

stmt, err := db.Prepare("INSERT INTO user(name, age) VALUES (?, ?)")
if err != nil {
    fmt.Println("prepare failed,", err)
    return
}
defer stmt.Close()

res, err := stmt.Exec("john", 29)
if err != nil {
    fmt.Println("insert data failed,", err)
    return
}

lastInsertId, err := res.LastInsertId()
if err != nil {
    fmt.Println("get last insert id failed,", err)
    return
}
fmt.Println("last insert id:", lastInsertId)
rowsAffected, err := res.RowsAffected()
if err != nil {
    fmt.Println("get rows affected failed,", err)
    return
}
fmt.Println("rows affected:", rowsAffected)
Salin selepas log masuk

}

pengaturcaraan pangkalan data MySQL menggunakan bahasa Go sangat mudah dipelajari dan digunakan. Jika anda menguasai ini Selepas mendapat pengetahuan, anda boleh mencuba operasi yang lebih kompleks, seperti urus niaga, pengumpulan sambungan, dsb. Ringkasnya, melalui penjelasan artikel ini, saya percaya bahawa semua orang telah menguasai pengetahuan asas gabungan bahasa Go dan pangkalan data MySQL. Saya berharap semua orang dapat memberikan permainan sepenuhnya kepada bakat mereka dalam pembangunan bahasa Go seterusnya.

Atas ialah kandungan terperinci Pengaturcaraan pangkalan data MySQL menggunakan bahasa Go: dari pemula hingga mahir. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk melaksanakan operasi di Linux Ippables Linked List di Golang? Bagaimana untuk melaksanakan operasi di Linux Ippables Linked List di Golang? Apr 02, 2025 am 10:18 AM

Menggunakan Golang untuk melaksanakan Linux ...

Apakah cara terbaik untuk melaksanakan penyimpanan pasangan nilai utama yang cekap? Apakah cara terbaik untuk melaksanakan penyimpanan pasangan nilai utama yang cekap? Apr 02, 2025 pm 01:54 PM

Cara yang betul untuk melaksanakan penyimpanan pasangan nilai kunci yang cekap dalam bahasa Go bagaimana untuk mencapai prestasi terbaik ketika membangunkan memori pasangan nilai utama yang serupa dengan redis dalam bahasa Go ...

Apakah masalah dengan thread giliran di crawler colly go? Apakah masalah dengan thread giliran di crawler colly go? Apr 02, 2025 pm 02:09 PM

Masalah Threading Giliran di GO Crawler Colly meneroka masalah menggunakan Perpustakaan Colly Crawler dalam bahasa Go, pemaju sering menghadapi masalah dengan benang dan permintaan beratur. � ...

Apakah status penonton semasa rangka kerja GO? Adakah lebih sesuai untuk perniagaan yang berbeza perlu memilih GRPC atau Gozero? Apakah status penonton semasa rangka kerja GO? Adakah lebih sesuai untuk perniagaan yang berbeza perlu memilih GRPC atau Gozero? Apr 02, 2025 pm 03:57 PM

Analisis status penonton rangka kerja GO dalam ekosistem pengaturcaraan GO semasa, pemaju sering menghadapi memilih rangka kerja yang tepat untuk memenuhi keperluan perniagaan mereka. Hari ini kita ...

Kenapa perlu lulus petunjuk apabila menggunakan perpustakaan Go dan Viper? Kenapa perlu lulus petunjuk apabila menggunakan perpustakaan Go dan Viper? Apr 02, 2025 pm 04:00 PM

GO Pointer Syntax dan menangani masalah dalam penggunaan perpustakaan Viper semasa pengaturcaraan dalam bahasa Go, adalah penting untuk memahami sintaks dan penggunaan petunjuk, terutama dalam ...

Pergi bahasa tidak cekap dalam memproses akses URL besar -besaran, bagaimana untuk mengoptimumkannya? Pergi bahasa tidak cekap dalam memproses akses URL besar -besaran, bagaimana untuk mengoptimumkannya? Apr 02, 2025 am 10:15 AM

Strategi Pengoptimuman Prestasi untuk GO Language URL Access Massive Artikel ini mencadangkan penyelesaian pengoptimuman prestasi untuk masalah menggunakan bahasa Go untuk memproses akses URL secara besar -besaran. Program sedia ada dari CSV ...

Di Go, mengapa rentetan percetakan dengan fungsi println dan rentetan () mempunyai kesan yang berbeza? Di Go, mengapa rentetan percetakan dengan fungsi println dan rentetan () mempunyai kesan yang berbeza? Apr 02, 2025 pm 02:03 PM

Perbezaan antara percetakan rentetan dalam bahasa Go: perbezaan kesan menggunakan fungsi println dan rentetan () sedang ...

Perpustakaan apa yang digunakan untuk operasi nombor terapung di GO? Perpustakaan apa yang digunakan untuk operasi nombor terapung di GO? Apr 02, 2025 pm 02:06 PM

Perpustakaan yang digunakan untuk operasi nombor terapung dalam bahasa Go memperkenalkan cara memastikan ketepatannya ...

See all articles