golang mysql商业用例_完美起航-golang操作mysql用例
golang操作mysql的demo,直接上代码
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
"log"
"strings"
)
const (
userName = "root"
password = "123456"
ip = "127.0.0.1"
port = "3306"
dbName = "oversea"
)
//var db = &sql.DB{}
func main() {
insert("test")
//query()
//update()
//query()
//delete()
}
func createTable(db *sql.DB, table string) {
sql := `
CREATE TABLE ` + table + `(
uid INT(10) NOT NULL AUTO_INCREMENT,
age INT(10) NOT NULL,
username VARCHAR(64) NULL DEFAULT NULL,
created DATE NULL DEFAULT NULL,
PRIMARY KEY(uid)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;`
fmt.Println(sql)
smt, err := db.Prepare(sql)
if err != nil {
fmt.Println(err)
}
smt.Exec()
}
func insert(tableName string) error {
path := strings.Join([]string{userName, ":", password, "@tcp(", ip, ":", port, ")/", dbName, "?charset=utf8"}, "")
db, err := sql.Open("mysql", path)
defer db.Close()
if err != nil {
return err
}
createTable(db, tableName)
sql := fmt.Sprintf("INSERT INTO %s(uid,age,username) values(NULL,%d,%s)",tableName,"mark", 21)
_, err = db.Exec(sql)
if err != nil {
return err
}
return nil
}
func update(tableName string) error {
path := strings.Join([]string{userName, ":", password, "@tcp(", ip, ":", port, ")/", dbName, "?charset=utf8"}, "")
db, err := sql.Open("mysql", path)
defer db.Close()
if err != nil {
return err
}
createTable(db, tableName)
sql := fmt.Sprintf("UPDATE %s set username=%s where uid=%d",tableName,"mark", 21)
_, err = db.Exec(sql)
if err != nil {
return err
}
return nil
}
func delete(tableName string) error {
path := strings.Join([]string{userName, ":", password, "@tcp(", ip, ":", port, ")/", dbName, "?charset=utf8"}, "")
db, err := sql.Open("mysql", path)
defer db.Close()
if err != nil {
return err
}
createTable(db, tableName)
sql := fmt.Sprintf("DELETE FROM %s where uid=%d",tableName,21)
_, err = db.Exec(sql)
if err != nil {
return err
}
return nil
}
func query(tableName string) error {
path := strings.Join([]string{userName, ":", password, "@tcp(", ip, ":", port, ")/", dbName, "?charset=utf8"}, "")
db, err := sql.Open("mysql", path)
defer db.Close()
if err != nil {
return err
}
createTable(db, tableName)
sql := fmt.Sprintf("SELECT uid,username FROM TEST",tableName)
rows, _ := db.Query(sql)
defer rows.Close()
for rows.Next() {
var name string
var id int
if err := rows.Scan(&id, &name); err != nil {
log.Fatal(err)
}
fmt.Printf("name:%s ,id:is %d\n", name, id)
}
return nil
}
golang mysql商业用例_完美起航-golang操作mysql用例相关推荐
- 怎么用php操作mysql删除数据库代码_如何使用php操作mysql的增删改查?
php操作mysql的增删改查方法:1.插入语句[insert into 数据表名(字段1,字段2,....) values("值1","值2",..)]:2. ...
- perl mysql 数据推拉_使用Perl DBI操作MySQL的一些建议
使用perl连接mysql,这个网上有很多案例了,一般大家都是DBI下的DBD::MySQL这个模块进行.这里做一个mask弄一个TIPS: Perl DBI MySQL的字符集为UTF8 Perl ...
- mysql 集群切换_完美起航-MySQLMHA高可用集群部署及故障切换(图文详解)
MySQL MHA 一.MHA概念 MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件. MHA 的出现就是解决MySQL 单点的问题. ...
- 搭建pxc集群时需要先安装mysql么_完美起航-高可用MySQL数据库之PXC集群
高可用MySQL数据库之PXC集群 前言 在上一篇文章介绍了时下流行的几种数据库产品后(公众号发送"NewSQL"查看),有不少小伙伴表示对自动集群的数据库感兴趣,特别是Cockr ...
- mysql数据库 中文乱码_在CMD中操作mysql数据库出现中文乱码解决方案
百度了一下..有说将cmd字符编码用chcp命令改为65001(utf8字符编码),可这样之后根本无法输入中文,查询出的中问结果依旧乱码 其实,只要保证cmd客户端和MySQL两者编码一致即可. 但现 ...
- c语言连接数据库例子,c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual help).doc...
这是精心收集的精品经典资料,值得下载保存阅读! c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual h ...
- 解决mysql的乱码问题_完美解决mysql中文乱码的问题
MySQL(和PHP搭配之最佳组合)中文乱码的原因 MySQL(和PHP搭配之最佳组合)会出现中文乱码的原因不外乎下列几点: MySQL(和PHP搭配之最佳组合) server本身设定问题,例如还停留 ...
- mysql元数据死锁日志_这个未修复的MySQL 5.7死锁Bug,你知道么?
破产码农 IT圈最会讲故事的网红 · 南山彭于晏 最近在生产上变更时遇到从机死锁的问题.表现的现象为:同一张的表的DROP TABLE操作进入了同一组.而由于并行复制,并且从机提交顺序需要保证与主机一 ...
- ubuntu安装mysql 密码忘了怎么办_在ubuntu上面安装mysql都密码忘记及一些常用命令...
重改密码! # /etc/init.d/mysql stop # mysqld_safe --user=mysql --skip-grant-tables --skip-networking & ...
最新文章
- openstack M 版 neutron网络组件基础入门
- 高亚芳 mysql_MySQL · 专家投稿 · MySQL数据库SYS CPU高的可能性分析
- 【H.264/AVC视频编解码技术具体解释】十三、熵编码算法(4):H.264使用CAVLC解析宏块的残差数据...
- 玩点不一样的,如何使用MATLAB实现批量修改文件后缀名,文件名,批量复制文件
- java虚成员函数_Java常见知识点汇总(④)——虚函数、抽象函数、抽象类、接口...
- verilog出租车计价器
- mysql语句使用_Mysql基本使用语句
- 解密OpenShift内部通信网络
- python安装多久_(一)安装Python
- 奇安信代码安全实验室帮助微软修复高危漏洞,获官方致谢
- 第4章 最基础的分类算法-k近邻算法 kNN 学习笔记 中
- 擎标|CMMI 5认证对软件企业有什么好处?
- linux 内核编程之proc虚拟文件系统
- 跟大家分享一下牛人常用的资源(牛客网 )!
- GALGAME文字提取agth 特殊码大全(特殊码表)和使用方法
- 计算机232接口接线图,串口线(232接口详细接线图)
- greasemonkey油猴子初学过程中遇到的问题
- JS常用的六种设计模式详解
- Egret引擎做游戏登录账号和密码显示
- Win10出现“你需要权限才能执行此操作”提示的解决方法--win7w.com
热门文章
- 高级停靠(Dock)技术的实现
- java常用类解析十:Date类和Calendar类示例
- SPI FLASH 分区情况
- TJA1050只能RX不能TX
- Bitcoin 中的挖矿算法(1) 难度值前奏
- C++ Primer 5th笔记(9)chapter9 顺序容器
- [HOW TO]-github/gitee私有项目用户名密码免输入
- 后台服务显示右下角弹窗 -- system权限创建用户权限进程
- VMProtect SDK+ASProtect SDK保护
- 进程间通信——自定义消息方式实现(SetWindowsHookEx)