跳转至

db

简介

  • db模块提供对数据库操作的能力,代码生成 --- Mapper 已基本演示了如何通过对BaseMapper的扩展实现数据库操作,此处不再详细介绍

数据库初始化

  • 通过以下代码对数据库初始化:
    ie310go.SetDbInfo(cfg.DataBase, cfg.DataBaseRO)
    
    SetDbInfo接受两个参数,第1个是可写数据库的信息,第2个是只读数据库的信息 定义如下:
    //  github.com/ie310mu/ie310go/forks/github.com/ilibs/gosql
    
    type Config struct {
        Enable       bool   `json:"enable"`
        Driver       string `json:"driver"`
        Dsn          string `json:"dsn"`
        MaxOpenConns int    `toml:"max_open_conns" json:"max_open_conns"` //最大打开的连接数
        MaxIdleConns int    `toml:"max_idle_conns" json:"max_idle_conns"` //最大闲置连接数
        MaxLifetime  int    `toml:"max_life_time" json:"max_life_time"`   //最大闲置时间,单位s,一般设置为mysql waittime的一半
        ShowSql      bool   `toml:"show_sql" json:"show_sql"`
    }
    
  • 获取mapper对象时,使用了如下的代码:
    mp := mapper.GetConsumeRecordMapper("ro")
    
    参数说明如下:
    • "ro":获取只读mapper
    • "":相当于"default",获取可写mapper