亲测可用的golang sql例程与包管理
sqlite与golang
package main import (
"database/sql"
"fmt"
"time" _ "github.com/mattn/go-sqlite3"
) func main() {
//打开数据库,如果不存在,则创建
db, err := sql.Open("sqlite3", "./foo.db")
checkErr(err) //创建表
sql_table := `
CREATE TABLE IF NOT EXISTS userinfo(
uid INTEGER PRIMARY KEY AUTOINCREMENT,
username VARCHAR(64) NULL,
departname VARCHAR(64) NULL,
created DATE NULL
);
` db.Exec(sql_table) // insert
stmt, err := db.Prepare("INSERT INTO userinfo(username, departname, created) values(?,?,?)")
checkErr(err) res, err := stmt.Exec("wangshubo", "国务院", "2017-04-21")
checkErr(err) id, err := res.LastInsertId()
checkErr(err) fmt.Println(id) // update
stmt, err = db.Prepare("update userinfo set username=? where uid=?")
checkErr(err) res, err = stmt.Exec("wangshubo_new", id)
checkErr(err) affect, err := res.RowsAffected()
checkErr(err) fmt.Println(affect) // query
rows, err := db.Query("SELECT * FROM userinfo")
checkErr(err)
var uid int
var username string
var department string
var created time.Time for rows.Next() {
err = rows.Scan(&uid, &username, &department, &created)
checkErr(err)
fmt.Println(uid)
fmt.Println(username)
fmt.Println(department)
fmt.Println(created)
} rows.Close() // delete
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)
}
}
1、包管理,apt-get install golang-glide 然后glide init,会自动产生glide.yaml,注意需要配置环境变量GOPATH,GOPATH可以是任意目录,但是init的时候会提示没有src目录,所以需要在GOPATH下面mkdir src文件夹。
2、glide get xxxx,然后将$GOPATH里面的包,cp到GOPATH的指定目录
亲测可用的golang sql例程与包管理的更多相关文章
- 亲测可用!!!golang如何在idea中保存时自动进行代码格式化
亲测可用,golang在idea中的代码自动格式化 1.ctrl+alt+s打开设置界面,选择[Plugins] -> [Install JetBrains plugin...] -> 搜 ...
- IDEA 使用Mybatis效率飞起来的必备工具:MybatisCodeHelperPro 最新破解版,亲测可用!
IDEA 2018.3.5 最新版本亲测可用. Git地址:https://github.com/pengzhile/MyBatisCodeHelper-Pro-Crack/releases 下载最新 ...
- 数据库工具DbVisualize安装、破解教程,亲测可用
之前工作中遇到生产环境不允许导入Oracle的dmp文件,只能导入sql脚本,但是表中存在clob字段,直接用plsql工具无法导出clob字段,用了下dbvisualizer可以直接导出,亲测可用. ...
- mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)
mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...
- 阿里云服务器centos7,docker部署mysql+Redis+vue+springboot+Nginx+fastdfs,亲测可用
一.购买云服务器 我是今年双十一期间在阿里云购买的服务器, 简单配置2核_4G_40G_3M,三年用了不到800块,不过当时我记得腾讯云更便宜,个人感觉,阿里的云服务器更加的稳定, 毕竟身经百战, 经 ...
- C#读取Excel设置(亲测可用)
OpenFileDialog openFD = new OpenFileDialog(); openFD.FileName = ""; openFD.Filter = " ...
- IntelliJ13+tomcat+jrebel实现热部署(亲测可用)
网上有很多介绍intellij idea整合jrebel插件实现热部署的文章,但是有的比较复杂,有的不能成功,最后经过各种尝试,实现了整合,亲测可用!步骤说明如下: 一.先下载jrebel安 ...
- Linux下通过crontab及expect实现自动化处理 --亲测可用
#!/usr/bin/expect -fspawn /home/scripts/bckup.shexpect "Enter password: " send "WWQQ ...
- Spring4.0.1+Quartz2.2.1实现定时任务调度[亲测可用]
Spring4.0.1+Quartz2.2.1实现定时任务调度[亲测可用] tip:只需要配置xml文件即可 1.第三方依赖包的引入 <properties> <project.bu ...
随机推荐
- php接受post传值的方法
这段时间在研究php的接口,利用jmeter模拟发送数据给php服务器,看php如何接收post传输过去的数据,遇到了几个问题,经过一番度娘之后终于有所理解,记录一下: 这里记录常用的两种post方式 ...
- JavaScript中数组的操作方法总汇
Array(数组)是JavaScript中最为常用的类型了.ECMAScript中的数组都是数据的有序列表.数组中可以保存任何类型的数据.数组的大小是可以动态调整的,既可以随着数据的添加自动增长以容纳 ...
- 20180708-Java运算符
public class Test{ public static void main(String args[]){ int a = 10; int b = 20; int c = 25; int d ...
- vue路由vue-router的安装和使用
1.安装,如果你没有在创建项目时候选择的情况下 cnpm install vue-router 2.使用 假设App为根组件,两个自定义组件home及list main.js里操作 impor ...
- 使用 localstorage 写入浏览器并获取
写入:以字符串的形式写入 localStorage.setItem('data', JSON.stringify(arr)); 获取: 注意:一定要使JSON.parse转为对象才能取出来,不然是空的 ...
- svn 中的add 和commit命令有何区别
add 功能:向文件拷贝所在的文件夹中添加新的文件,并作出标识,是新添加的,下一步提交时将一并提交到Subversion版本库中去.简单的说就是将一新文件加入svn,你添加再提交后该文件就进入subv ...
- 关于TCP\IP协议的简单理解
一: HTTP是基于TCP协议的,TCP属于传输层.HTTP属于应用层. 另一个属于传输层的是UDP协议. 但HTTP是基于TCP这个协议,不是UDP这个协议. TCP相比于UDP,更安全,稳定.因为 ...
- 像计算机科学家一样思考python-第2章 变量、表达式和语句
感想: 1.程序出现语义错误时,画状态图是一个很好的调试办法.打印出关键变量在不同代码处理后值的变化,就能发现问题的蛛丝马迹. 2.每当学习新语言特性时,都应当在交互模式中进行尝试,并故意犯下错误,看 ...
- Robotframework使用自写库连接mysql数据库
Robotframework使用自写库连接mysql数据库 新建库文件mysqltest.py 代码如下: # -*- coding: utf-8 -*- import MySQLdbimport o ...
- 【JAVA】java编译错误:编码UTF8/GBK的不可映射字符
环境: win7 cmd窗口编译 javac xx.java时报错 错误显示:错误:编码GBK的不可映射字符 背景: 分析发现是中文字符所在行报错了 查阅相关资料发现,是因为编译器设置为了utf-8, ...