加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

22.蛤蟆笔记go语言——使用SQLite驱动

发布时间:2020-12-12 19:30:02 所属栏目:百科 来源:网络整理
导读:22.蛤蟆笔记go语言——使用SQLite驱动 下载驱动 https://github.com/mattn/go-sqlite3 解压,放入到文件mattngo-sqlite3中 此外,需要在WINDOWS上安装GCC,蛤蟆此处安装的是:tdm64-gcc-5.1.0-2.exe 创建表 sqlite3 foo.db CREATE TABLE `userinfo` ( `uid`

22.蛤蟆笔记go语言——使用SQLite驱动

下载驱动

https://github.com/mattn/go-sqlite3

解压,放入到文件mattngo-sqlite3中

此外,需要在WINDOWS上安装GCC,蛤蟆此处安装的是:tdm64-gcc-5.1.0-2.exe

创建表

sqlite3 foo.db

CREATE TABLE `userinfo` (

`uid` INTEGERPRIMARY KEY AUTOINCREMENT,

`username`VARCHAR(64) NULL,

`departname` VARCHAR(64) NULL,

`created`DATE NULL

);

CREATE TABLE `userdeatail` (

`uid`INT(10) NULL,

`intro`TEXT NULL,

`profile`TEXT NULL,

PRIMARY KEY(`uid`)

);

代码

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)

forrows.Next() {

varuid int

varusername string

vardepartment string

varcreated 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)

}

}

PS:之前创建的foo.db需要放到go语言代码所在的目录。

执行结果

1

1

1

astaxieupdate

研发部门

2012-12-09T00:00:00Z

1

与Mysql的一致。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读