資料庫:
create database customer;#建立資料庫
use customer;#使用資料庫
create table customer(id int primary key auto_increment ,name varchar(11),*** varchar(4),age int ,phone varchar(20), email varchar(20));#非空,唯一標識,自增,新增字段
insert into customer (name,***,age,phone , email) values(『tom』,『男』,18,『123123』,『[email protected]』);#新增資訊
select * from customer;#查詢資訊
desc customer;#檢視表結構
)// 結構體
type customer struct
type customers struct
const (
drivername = 「mysql」
driver = 「root:root@tcp(localhost:3306)/customer?charset=utf8」
)var db = &sql.db{}
func init()
db.setconnmaxlifetime(100 * time.second) // 最大連線週期,超過時間的連線就close
db.setmaxopenconns(100) // 設定最大連線數
db.setmaxidleconns(16) // 設定閒置連線數
}// 錯誤資訊
func checkerr(err error)
}// 回滾
func cleartransaction(tx *sql.tx)
}// 查詢customer
func (this *customers) query(db *sql.db) customer
return this.customers// 新增 返回受影響行數
func (this *customers) increase(customer customer, tx *sql.tx) int64
return numfunc main()
customer := customer
// 開啟事務
tx, err := db.begin()
checkerr(err)
defer cleartransaction(tx)
// 查詢
fmt.println("*******************查詢*******************")
fmt.println("序號\t姓名\t性別\t年齡\t**\temail")
for _, v := range this.query(db)
fmt.println("******************查詢完成******************")
fmt.println()
// 新增
fmt.println("*******************新增*******************")
fmt.println(this.increase(customer, tx))
if this.increase(customer, tx) != 1
fmt.println("******************新增完成******************")
fmt.println()
// 修改同等
// 刪除同等
MySQL開啟事務
什麼是事務?事務是邏輯上的一組操作,組成這組操作的各個單元,要不全都成功要不全都失敗,這個特性就是事務 注意 mysql資料支援事務,但是要求必須是innodb儲存引擎 解決這個問題 mysql的事務解決這個問題,因為mysql的事務特性,要求這組操作,要不全都成功,要不全都失敗,這樣就避免了某個操...
NodeJs mysql 開啟事務
如題 node後台使用mysql資料庫,並使用事務來管理資料庫操作。這裡主要講乙個事務的封裝並寫了乙個insert 插入操作。code db.config.js const mysql require mysql const pool mysql.createpool 返回乙個promise鏈結 c...
MVC開啟事務方法
引言 其實事務在資料層 服務層 業務邏輯層多處地方都會使用到,在本篇文章將會為大家一一細說。其中前面四節是事務的基礎,後面的三節是事務的重點,對事務有基礎的朋友可以跳過前面四節。文章有錯漏的地方歡迎各位點評。一 事務的定義 所謂事務,它是乙個操作集合,這些操作要麼都執行,要麼都不執行,它是乙個不可分...