我創建了一個在mysql數據庫上執行查詢的func。我使用此包“github.com/go-sql-driver/mysql”但是如果我運行這個:...err := database.ExecuteSql("INSERT INTO xxx(field1, field2, field3) VALUES(?, ?, ?)", "field1", 123, time.Now())...func ExecuteSql(cmd string, , args ...interface{}) error { ctx := context.Background() _, err := db.ExecContext(ctx, cmd, args) ctx.Done() ...}它返回我“sql:轉換參數$1類型:不受支持的類型[]接口{},接口的切片”
1 回答

絕地無雙
TA貢獻1946條經驗 獲得超4個贊
當您像這樣執行該方法時:
_, err := db.ExecContext(ctx, cmd, args)
您只作為一個參數傳遞。不支持將切片作為方法的參數,除非其 .args
[]interface{}
ExecContext
[]byte
您需要將解包運算符與 :args
_, err := db.ExecContext(ctx, cmd, args...)
- 1 回答
- 0 關注
- 125 瀏覽
添加回答
舉報
0/150
提交
取消