要在Golang中执行SQL查询,需要先建立一个数据库连接,并且使用SQL包的API执行查询语句。
以下是一个连接到MySQL数据库并执行查询的示例代码:
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql" // import MySQL driver
)
func main() {
// establish database connection
db, err := sql.Open("mysql", "user:password@tcp(host:port)/database")
if err != nil {
panic(err.Error())
}
defer db.Close() // close connection when function completes
// execute query
rows, err := db.Query("SELECT name, age FROM users WHERE city=?", "New York")
if err != nil {
panic(err.Error())
}
defer rows.Close() // close result set when function completes
// process result set
for rows.Next() {
var name string
var age int
err := rows.Scan(&name, &age)
if err != nil {
panic(err.Error())
}
fmt.Printf("Name: %s, Age: %d\n", name, age)
}
}
database/sqlgithub.com/go-sql-driver/mysqlsql.OpenSELECTrows.Scan
注意:这个例子中没有做错误处理,真正的程序应该处理各种可能的错误情况。