GORM 提供了 DB 方法,可用于从当前 *gorm.DB 返回一个通用的数据库接口 *sql.DB

  1. // 获取通用数据库对象 sql.DB,然后使用其提供的功能
  2. sqlDB, err := db.DB()
  3. // Ping
  4. sqlDB.Ping()
  5. // Close
  6. sqlDB.Close()
  7. // 返回数据库统计信息
  8. sqlDB.Stats()

注意 如果底层连接的数据库不是 *sql.DB,它会返回错误

连接池

  1. // 获取通用数据库对象 sql.DB ,然后使用其提供的功能
  2. sqlDB, err := db.DB()
  3. // SetMaxIdleConns 用于设置连接池中空闲连接的最大数量。
  4. sqlDB.SetMaxIdleConns(10)
  5. // SetMaxOpenConns 设置打开数据库连接的最大数量。
  6. sqlDB.SetMaxOpenConns(100)
  7. // SetConnMaxLifetime 设置了连接可复用的最大时间。
  8. sqlDB.SetConnMaxLifetime(time.Hour)