golang 连接、操作完mysql, 对mysql的连接会自动关闭,还是必须要手动关闭?
参考 astaxie 的代码import (
_ "code.google.com/p/go-mysql-driver/mysql"
"database/sql"
"fmt"
//"time"
)
func main() {
db, err := sql.Open("mysql", "astaxie:astaxie@/test?charset=utf8")
checkErr(err)
//插入数据
stmt, err := db.Prepare("INSERT userinfo SET username=?,departname=?,created=?")
checkErr(err)
res, err := stmt.Exec("astaxie", "研发部门", "2012-12-09")
checkErr(err)
id, err := res.LastInsertId()
checkErr(err)
fmt.Println(id)
//删除数据
stmt, err = db.Prepare("delete from userinfo where uid=?")
checkErr(err)
res, err = stmt.Exec(id)
checkErr(err)
affect, err = res.RowsAffected()
checkErr(err)
fmt.Println(affect)
}
func checkErr(err error) {
if err != nil {
panic(err)
}
}
求教:这段代码对数据库的连接没有主动关闭(调用 db.Close()), 是不是Go的垃圾收集自动关闭释放资源呢? 还是必须手动调用db.Close()释放资源?
相关阅读:
在lion系统上如何让named不自动随开机启动
一段验证代码的3点困惑
eclipse 下编译opencv不能识别一些关键字是怎么回事?
myEclipse2013打开jsp页面时卡的要死
请教图片服务器的问题
app接口怎么做压力测试,有哪些工具
前端该怎么获取数据?
drupal7开启cache后,message在首页显示不出来
jade中文本包裹标签要怎么书写?
走http的时候,如何避免运营商的野广告
数据库中一个字段的顺序维护问题
android 图片批量上传
php书写格式的问题?
怎么让这个父div的高度始终跟子div的高度一样?
如何实现“文本框输入为空时,按钮禁用,文本框输入不空时,按钮可用”
请问这个网站的效果怎么实现的?
ios webview loadrequest的时候报的错,请问这怎么处理啊?
关于setfacl?
为什么百度网盘,金山网盘的下载链接返回302
vue.js循环的时候指定数组中元素的个数