在import sqlite的时候,golang build 出现如下错误,git
exec: "gcc": executable file not found in %PATH%
缘由是sqlitle3是个cgo库,须要gcd编译c代码
而后下载安装tdm-gcc便可(windosw版本)下载地址:http://tdm-gcc.tdragon.net/downloadgithub
````js
package maingolang
import (
"database/sql"
"fmt"
_ "github.com/mattn/go-sqlite3"
)sql
func main() {
db, err := sql.Open("sqlite3", "./foo.db")
checkErr(err)ui
//插入数据 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()
}.net
func checkErr(err error) {
if err != nil {
panic(err)
}
}
```code
更多请访问:红象UEDsqlite