回复了 shook 创建的主题: stmt.Exec()能不能用数组做为传入参数?
func ExecSqlNonRst(query string, cond ...interface{}) error {
db, err := sql.Open(Config["dbdriver"], ConnectString)
if err != nil {
fmt.Fprintf(os.Stdout, "%s sql.Open Error: %s\n", time.Now().Format("2006-01-02 15:04:05.000"), err)
panic(err)
}
defer db.Close()
stmt, err := db.Prepare(query)
if err != nil {
fmt.Fprintf(os.Stdout, "%s db.Prepare Error: %s\n", time.Now().Format("2006-01-02 15:04:05.000"), err)
panic(err)
}
defer stmt.Close()
_, err = stmt.Exec(cond...)
if err != nil {
fmt.Fprintf(os.Stdout, "%s stmt.Exec Error: %s\n", time.Now().Format("2006-01-02 15:04:05.000"), err)
panic(err)
}
return nil
}
调用的时候
common.ExecSqlNonRst(`update table set regtime=now(),col1=$1,col2=$2 where id=$3;`, val , val2, val3)