$ go get -u github.com/jingmingyu/dbsdk
    mysqldb := db_mysql.MYSQL{		Host:     "127.0.0.1",		Port:     "3306",		Username: "test",		Password: "test",		Dbname:   "mytestdb",	}

Select Method:

  1. SelectToJson

  2. SelectToRowsData

SelectToJson : Ordinary select like select show master status
	querysql := fmt.Sprintf("%s", "SELECT * FROM `dbtool_accesslog`")	res, _ := mysqldb.SelectToJson(querysql)	fmt.Println(res)
result :
[{    "created_by": {        "String": "",        "Valid": false    },    "id": {        "String": "10",        "Valid": true    },    "operate_page": {        "String": "abc",        "Valid": true    },    "when_created": {        "String": "2022-03-17T22:37:23+08:00",        "Valid": true    }}]

SelectToRowsData: show engine innodb status

	querysql := fmt.Sprintf("%s", "show engine innodb status")	res, _ := mysqldb.SelectToRowsData(querysql)	fmt.Println(res.Data)
res:
[[{InnoDB true} { true} {=====================================2022-03-18 10:04:00 140672645170944 INNODB MONITOR OUTPUT=====================================Per second averages calculated from the last 59 seconds-----------------BACKGROUND THREAD-----------------srv_master_thread loops: 5073576 srv_active, 0 srv_shutdown, 1710 srv_idlesrv_master_thread log flush and writes: 0----------...

DML Method:

  1. insert

   insertsql := fmt.Sprintf("%s", "insert into `dbtool_accesslog`( `operate_page` , `when_created` ) VALUE ('zzzzzzzz',now())")   res, _ := mysqldb.DirectExec(insertsql)   fmt.Println(res)
  1. delete

    deletesql := fmt.Sprintf("%s", "delete from `dbtool_accesslog`")    res, _ := mysqldb.DirectExec(deletesql)    fmt.Println(res)
  1. update

	updatesql := fmt.Sprintf("%s", "update `dbtool_accesslog` set operate_page='ascd' ")	res, _ := mysqldb.DirectExec(updatesql)	fmt.Println(res)

TRX Exec Method:

  1. DirectExec

	updatesql := fmt.Sprintf("%s", "update `dbtool_accesslog` set operate_page='ascd' ")	res, _ := mysqldb.DirectExec(updatesql)	fmt.Println(res)	exec add/drop ddl	addsql := fmt.Sprintf("%s", "alter table dbtool_accesslog add zzz int(2)")	res, _ := mysqldb.DirectExec(addsql)	fmt.Println(res)	dropsql := fmt.Sprintf("%s", "alter table dbtool_accesslog drop  COLUMN zzz ")	res, _ := mysqldb.DirectExec(dropsql)	fmt.Println(res)
  1. SingleTrxExec

//single trx exec	// 单个事务执行	trxsql := fmt.Sprintf("%s", "insert into `dbtool_accesslog`( `operate_page` , `when_created` ) VALUE ('zzzzzzzz',now())")	res, err := mysqldb.SingleTrxExec(trxsql)	if err != nil {		fmt.Println(err)	}	fmt.Println(res)
  1. ComTrxExec

// combine trx exec	// 组合事务顺序执行	var trx []string	trxsql1 := fmt.Sprintf("%s", "insert into `dbtool_accesslog`( `operate_page` , `when_created` ) VALUE ('zzzzzzzz',now())")	trxsql2 := fmt.Sprintf("%s", "insert into `dbtool_accesslog`( `operate_page` , `when_created` ) VALUE ('bbbbb',now())")	trxsql3 := fmt.Sprintf("%s", "insert into `dbtool_accesslog`( `operate_page` , `when_created` ) VALUE ('bbbbb',now())")	trxsql4 := fmt.Sprintf("%s", "update `dbtool_accesslog` set operate_page='zzzzzzzz' where operate_page='ascd'")	trxsql5 := fmt.Sprintf("%s", "insert into `dbtool_accesslog`( `operate_page` , `when_created` ) VALUE ('zzzzzzzz',now())")		trx = append(trx,trxsql1,trxsql2,trxsql3,trxsql4,trxsql5)		res, err := mysqldb.ComTrxExec(trx)		if err != nil {		fmt.Println(err)	}		for _,v := range res{		fmt.Println(v)	}