dt_automate/dbpool/mysqldb.go
2025-03-11 16:22:26 +08:00

58 lines
1.3 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package dbpool
import (
"database/sql"
"dt_automate/conf"
"dt_automate/tool"
"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.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
}