一、go連線mysql
1、mysql驅動
說明:sql.open()函式用來開啟乙個註冊過的資料庫驅動,go-mysql-driver中註冊了 mysql這個資料庫驅動,第二個引數是dns,它是go-mysql-driver定義的一些資料庫鏈結和配置資訊。
或#在cmd中執行安裝命令
3、建立資料庫
1、建立資料庫
mysql> create database nulige character set utf8;
query ok, 1 row affected (0.00 sec)
mysql> show databases;
| database |
| information_schema |
| mysql |
| nulige |
| performance_schema |
| test |
5 rows in set (0.00 sec)
mysql> use nulige
database changed
2、建表
mysql> create table user_info(id int(11), username varchar(20), departname varch
ar(20), create_time timestamp default "0000-00-00 00:00:00", primary key(id));
3、檢視表
mysql> show tables;
| tables_in_nulige |
| user_info |
1 row in set (0.00 sec)
4、檢視表結構
mysql> desc user_info;
| field | type | null | key | default | extra |
| id | int(11) | no | pri | 0 | |
| username | varchar(20) | yes | | null | |
| departname | varchar(20) | yes | | null | |
| create_time | timestamp | no | | 0000-00-00 00:00:00 | |
4 rows in set (0.01 sec)
5、往資料庫中插入資料
示例1:
檢查是否連線成功資料庫
stmt, err := db.prepare("insert into user_info set username=?,departname=?,create_time=?")
if err != nil {
fmt.println(err)
return
res, err := stmt.exec("nulige", "商務部", "2019-1-28")
id, err := res.lastinsertid()
if err != nil {
panic(err)
fmt.println(id)
執行結果:
mysql> select * from user_info;
| id | username | departname | create_time |
| 0 | nulige | 商務部 | 2019-01-28 00:00:00 |
1 row in set (0.00 sec)
示例2: 登入mysql,手工插入
mysql> insert into user_info (id,username,departname,create_time) values ("2","n
ulige","行政部","2019-1-11 16:23:00");
query ok, 1 row affected (0.00 sec)
mysql> select * from user_info;
| id | username | departname | create_time |
| 0 | nulige | 商務部 | 2019-01-28 00:00:00 |
| 1 | nulige | 技術部 | 2019-01-28 00:00:00 |
| 2 | nulige | 行政部 | 2019-01-11 16:23:00 |
3 rows in set (0.00 sec)
go連線mysql GO連線MySQL
go語言沒有提供官方的資料庫驅動,所以要安裝第三方函式庫。多行查詢 多行查詢db.query 執行一次查詢,返回多行結果 即rows 一般用於執行select命令。引數args表示query中的佔位引數。具體示例 查詢多條資料示例 func querymultirowdemo fmt.printf ...
go語言之高階篇建立goroutine協程
1 goroutine是什麼 goroutine是go並行設計的核心。goroutine說到底其實就是協程,但是它比執行緒更小,十幾個goroutine可能體現在底層就是五六個執行緒,go語言內部幫你實現了這些goroutine之間的記憶體共享。執行goroutine只需極少的棧記憶體 大概是4 5...
go語言之高階篇拷貝檔案案例
1 檔案案例 拷貝檔案 示例 package main import fmt io os func main srcfilename list 1 drcfilename list 1 if srcfilename drcfilename 唯讀方式開啟原始檔 sf,err1 os.open srcf...