使用go连接mssql还是比较方便,注意连接字符串要加上
encrypt=disable
package main import _ "github.com/denisenkom/go-mssqldb" import "database/sql" import "log" import "fmt" import "flag" var debug = flag.Bool("debug", false, "enable debugging") var password = flag.String("password", "", "the database password") var port *int = flag.Int("port", 1433, "the database port") var server = flag.String("server", "", "the database server") var user = flag.String("user", "", "the database user") func main() { flag.Parse() // parse the command line args if *debug { fmt.Printf(" password:%s\n", *password) fmt.Printf(" port:%d\n", *port) fmt.Printf(" server:%s\n", *server) fmt.Printf(" user:%s\n", *user) } connString := fmt.Sprintf("server=%s;user id=%s;password=%s;port=%d;encrypt=disable", *server, *user, *password, *port) if *debug { fmt.Printf(" connString:%s\n", connString) } conn, err := sql.Open("mssql", connString) if err != nil { log.Fatal("Open connection failed:", err.Error()) } defer conn.Close() stmt, err := conn.Prepare("select 1, 'abc'") if err != nil { log.Fatal("Prepare failed:", err.Error()) } defer stmt.Close() row := stmt.QueryRow() var somenumber int64 var somechars string err = row.Scan(&somenumber, &somechars) if err != nil { log.Fatal("Scan failed:", err.Error()) } fmt.Printf("somenumber:%d\n", somenumber) fmt.Printf("somechars:%s\n", somechars) fmt.Printf("bye\n") }
使用方法:
E:\Go_Project\mssql_t1>mssql_t1.exe –debug=true –password=123456–server=127.0.0.1 –user=sa
参考
http://studygolang.com/resources/4094
http://www.cnblogs.com/songxingzhu/p/5849148.html