使用go-mssqldb遇到的问题
如果你遇到问题,最好的方法就是阅读官方文档。
关于go-mssqldb的使用,微软写了个很好的示例:Quickstart: Use Golang to query a database in Azure SQL Database or Azure SQL Managed Instance 。
下面编写了我使用go-mssqlddb使用遇到的问题和解决方法。
问题
1. Open connection failed:sql: unknown driver “mssql” (forgotten import?)
1 | import _ "github.com/denisenkom/go-mssqldb" |
2. Query failed:read tcp 192.168.0.4:56417->192.168.0.12:1433: read: connection reset by peer
1 | encrypt=disable |
3. 调用存储过程报错 sql: expected 0 arguments, got 1
我使用的SQL Server版本是2008。
百度Google始终没有找到方法,最终在issue中找到了。所以有问题还是多看README、官方文档,以及issue中查找吧!
解决方法是Open时的参数driverName使用 sqlserver
,而不是常看到的 mssql
。
4. converting argument $1 type: unsupported type []interface {}, a slice of interface
错误使用:
1 | func f(query string, args ...interface{}) { |
正确使用:
1 | func f(query string, args ...interface{}) { |
使用go-mssqldb遇到的问题