安装问题
在import sqlite的时候,golang build 出现以下错误,
exec: "gcc": executable file not found in %PATH%
原因是sqlitle3是个cgo库,需要gcd编译c代码
然后下载安装tdm-gcc即可(windosw版本)下载地址:http://tdm-gcc.tdragon.net/download
在golang中使用sqlite3
````js
package main
import (
"database/sql"
"fmt"
_ "github.com/mattn/go-sqlite3"
)
func main() {
db,err := sql.Open("sqlite3","./foo.db")
checkErr(err)
//插入数据 stmt,err := db.Prepare("INSERT INTO userinfo(username,departname,created) values(?,?,?)") 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("update userinfo set username=? where uid=?") checkErr(err) res,err = stmt.Exec("astaxieupdate",id) checkErr(err) affect,err := res.RowsAffected() checkErr(err) fmt.Println(affect) //查询数据 rows,err := db.Query("SELECT * FROM userinfo") checkErr(err) for rows.Next() { var uid int var username string var department string var created string err = rows.Scan(&uid,&username,&department,&created) checkErr(err) fmt.Println(uid) fmt.Println(username) fmt.Println(department) fmt.Println(created) } //删除数据 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) db.Close()
}
func checkErr(err error) {
if err != nil {
panic(err)
}
}
```
更多请访问:红象UED