golang中事务的使用

本文介绍了在Golang中如何使用事务来确保数据一致性。通过`Begin`、`Commit`和`Rollback`方法,确保数据库操作的原子性和完整性。示例代码展示了基础的事务使用方式。
摘要由CSDN通过智能技术生成

golang中事务的使用

事务介绍

上面两篇主要是介绍了怎么使用相关库连接数据库和最基础的数据增删改查。
但是在实际开发过程中多数情况下,业务不会这么的单一,一般都是涉及到很多数据的修改,而这些修改又必须保持一致性(要么全部成功,要么全部失败。),这个时候就引入了事务的概念。

通过事务,保证数据一致性

事务的操作,一个begin必须有对应的commit或者rollback。以保证事务的完整
func (db *DB) Begin() (*Tx, error)
func (tx *Tx) Commit() error Commit递交事务。
func (tx *Tx) Rollback() error Rollback放弃并回滚事务。
使用完成之后必须要回收stmt和 *DB

基础的使用代码如下

package main

import (
	"database/sql"
	"fmt"
	_ "github.com/godror/godror"
)
var db *sql.DB
const (
	host = "192.168.1.11"
	port = 1521
	user = "system"
	sqlpassword = "manager"
	dbname = "peixun"
)
func initsql(){
	osqlInfo := fmt.Sprintf("%s/%s@%s:%d/%s", user, sqlpassword, host, port, dbname)
	DB, err := sql.Open("godror", osqlInfo)
	if err 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值