package main import ( "database/sql" "fmt" _ "github.com/Go-SQL-Driver/MySQL" ) func main() { db, err := sql.Open("mysql", "root@/gotest") if err != nil { panic(err) } fmt.Println("Prepare 1:") stmt, err := db.Prepare("SELECT 1") if err != nil { panic(err) // No error } fmt.Println() fmt.Println("Close 1:") err = stmt.Close() if err != nil { panic(err) // No error here too } fmt.Println() fmt.Println("Prepare 2:") stmt, err = db.Prepare("SELECT 1") fmt.Println() fmt.Println("Query 1:") rows, err := stmt.Query() rows.Close() fmt.Println() fmt.Println("Query 2:") rows, err = stmt.Query() rows.Close() fmt.Println() fmt.Println("Close 2:") err = stmt.Close() fmt.Println() db.Close() }