Maison >développement back-end >Golang >Compréhension approfondie des opérations SQL en langage Go
Dans le domaine du développement logiciel actuel, les opérations de bases de données jouent un rôle très important. En tant que langage de programmation rapide et efficace, le langage Go fournit également une bibliothèque riche et pratique pour les opérations SQL, qui peut facilement interagir avec différents types de bases de données. Cet article partira des bases, introduira progressivement des connaissances approfondies liées aux opérations SQL dans le langage Go et donnera des exemples de code spécifiques.
Dans le langage Go, nous utilisons généralement le package database/sql
et le pilote de base de données correspondant pour nous connecter à la base de données. Tout d'abord, vous devez importer les bibliothèques pertinentes :
import ( "database/sql" _ "github.com/go-sql-driver/mysql" )
func ConnectDB() (*sql.DB, error) { // 数据库连接信息 dsn := "root:password@tcp(127.0.0.1:3306)/dbname" // 打开数据库连接 db, err := sql.Open("mysql", dsn) if err != nil { return nil, err } // 检查数据库连接 if err = db.Ping(); err != nil { return nil, err } return db, nil }
func QueryDB(db *sql.DB) { rows, err := db.Query("SELECT id, name FROM users") if err != nil { fmt.Println("Failed to query database:", err) return } defer rows.Close() var id int var name string for rows.Next() { if err := rows.Scan(&id, &name); err != nil { fmt.Println("Failed to scan rows:", err) return } fmt.Println("ID:", id, "Name:", name) } }
func InsertDB(db *sql.DB, name string) error { _, err := db.Exec("INSERT INTO users (name) VALUES (?)", name) if err != nil { return err } return nil }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!