package dbpool import ( "all_platform/conf" "all_platform/tool" "database/sql" "log" _ "github.com/go-sql-driver/mysql" ) var db *sql.DB func init() { db, _ = sql.Open("mysql", tool.KeyStr(conf.GET_Config_yaml("mysql.root").(string))+":"+tool.KeyStr(conf.GET_Config_yaml("mysql.password").(string))+"@tcp(fanyu.online:53306)/?charset=utf8&parseTime=True&loc=Local") db.SetMaxOpenConns(20) db.SetMaxIdleConns(10) // DB.SetConnMaxLifetime(100) err := db.Ping() if err != nil { log.Println("database init failed, err: ", err) return } log.Println("mysql conn pool has initiated.") } // QueryRows 是一个通用的查询函数,它执行SQL查询并返回单个结果 func QueryRows(query string, args ...any) *sql.Row { return db.QueryRow(query, args...) } // Query 是一个通用的查询函数,它执行SQL查询并返回结果集 func Query(query string, args ...any) (*sql.Rows, error) { rows, err := db.Query(query, args...) if err != nil { return nil, err } return rows, nil } // ExecuteSQL 是一个通用的插入函数,它执行SQL插入并返回结果集 func ExecuteSQL(query string, args ...any) (sql.Result, error) { result, err := db.Exec(query, args...) if err != nil { return nil, err } return result, nil } type Douy_info struct { Mobile_phone_number sql.NullString SerialNumber sql.NullString Username sql.NullString Initial_time sql.NullString End_time sql.NullString Surplus_time sql.NullString Key sql.NullString Status sql.NullString }