Rumah >pangkalan data >tutorial mysql >Pembangunan menggunakan bahasa MySQL dan Go: Bagaimana untuk melaksanakan fungsi penapisan data
Dibangunkan menggunakan bahasa MySQL dan Go: Cara melaksanakan fungsi penapisan data
1 Pengenalan
Apabila membangunkan aplikasi web, fungsi penapisan data adalah keperluan biasa. Kami selalunya perlu mendapatkan data khusus daripada pangkalan data untuk memenuhi kriteria carian pengguna. Artikel ini akan memperkenalkan cara menggunakan MySQL dan pembangunan bahasa Go untuk melaksanakan fungsi penapisan data.
2. Sebelum kita mula, kita perlu menyediakan persekitaran dan alatan berikut:
Pertama, kita perlu menyambung ke pangkalan data MySQL dalam program Go. Anda boleh mencipta fail yang dipanggil "database.go" dan menambah kod berikut di dalamnya:
package main import ( "database/sql" "fmt" "log" _ "github.com/go-sql-driver/mysql" ) func main() { db, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:3306)/database") if err != nil { log.Fatal(err) } defer db.Close() err = db.Ping() if err != nil { log.Fatal(err) } fmt.Println("Connected to MySQL database!") // 在这里写入数据筛选的代码 }Sila gantikan "pengguna", "kata laluan" dan "pangkalan data" dengan nama pengguna, kata laluan dan nama pangkalan data MySQL anda sendiri. 4. Laksanakan fungsi penapisan data
Seterusnya, kami akan melaksanakan fungsi penapisan data dalam kod di atas. Katakan kita mempunyai jadual data bernama "pengguna" yang mengandungi tiga medan: "id", "nama" dan "umur". Kami mahu menapis data berdasarkan syarat yang ditentukan pengguna.
package main import ( "database/sql" "fmt" "log" _ "github.com/go-sql-driver/mysql" ) type User struct { ID int Name string Age int } func main() { db, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:3306)/database") if err != nil { log.Fatal(err) } defer db.Close() err = db.Ping() if err != nil { log.Fatal(err) } fmt.Println("Connected to MySQL database!") // 数据筛选 rows, err := db.Query("SELECT id, name, age FROM users WHERE age > ?", 18) if err != nil { log.Fatal(err) } defer rows.Close() var users []User for rows.Next() { var user User err := rows.Scan(&user.ID, &user.Name, &user.Age) if err != nil { log.Fatal(err) } users = append(users, user) } err = rows.Err() if err != nil { log.Fatal(err) } for _, user := range users { fmt.Println(user) } }Dalam kod di atas, kami menggunakan kaedah "db.Query" untuk melaksanakan pernyataan pertanyaan SQL yang akan memuaskan Rekod keadaan (umur>18) diambil semula. Kemudian, kami menggunakan kaedah "rows.Scan" untuk membaca hasil pertanyaan ke dalam struktur Pengguna, dan akhirnya mencetak data pengguna yang memenuhi syarat. 5. Ringkasan
Melalui pengenalan artikel ini, kami telah mempelajari cara menggunakan bahasa MySQL dan Go untuk membangunkan fungsi penapisan data. Kami menyambung ke pangkalan data MySQL dan menulis kod untuk melaksanakan penapisan data. Ini hanyalah contoh mudah Dalam pembangunan sebenar, kita boleh mereka bentuk fungsi penapisan data yang lebih kompleks mengikut keperluan tertentu.
Atas ialah kandungan terperinci Pembangunan menggunakan bahasa MySQL dan Go: Bagaimana untuk melaksanakan fungsi penapisan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!