[英]Golang SQL error expected 0 arguments got 3
I'm using github.com/denisenkom/go-mssqldb
library and driver but getting an error sql: expected 0 arguments, got 3 exit status 1
when inserting new row.我正在使用
github.com/denisenkom/go-mssqldb
库和驱动程序,但出现错误sql: expected 0 arguments, got 3 exit status 1
。
tsql := "INSERT INTO Uploads (Fname, Fsize, Ftype) VALUES (@Fname, @Fsize, @Ftype );"
fmt.Printf("tsql = %s\n", tsql)
//Execute non-query with named parameters
res, err := db.ExecContext(
ctx,
tsql,
sql.Named("Fname", fname),
sql.Named("Fsize", fsize),
sql.Named("Ftype", ftype))
if err != nil {
log.Fatal(" AddRow_v1() -> Error creating new row: " + err.Error())
return -1, err
}
This issue might be related to driver name used in the connection string.此问题可能与连接字符串中使用的驱动程序名称有关。 I've tried the same query with yours, the record is created without any errors.
我已经尝试了与您相同的查询,记录的创建没有任何错误。
I believe that you are currently using mssql in connection string;我相信您目前在连接字符串中使用 mssql; sql.Open("mssql", conn) (This issue has already been discussed in https://github.com/denisenkom/go-mssqldb/issues/594#issuecomment-809922317 )
sql.Open("mssql", conn) (这个问题已经在https://github.com/denisenkom/go-mssqldb/issues/594#issuecomment-809922317中讨论过)
If you try again by replacing "mssql" to "sqlserver", the problem should be solved.如果您通过将“mssql”替换为“sqlserver”再试一次,应该可以解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.