共计 1151 个字符,预计需要花费 3 分钟才能阅读完成。
先装置好 Golang 环境
MacBook Linux 树莓派 raspberrypi 装置 Golang 环境
package main | |
import ( | |
"database/sql" | |
"flag" | |
"fmt" | |
"log" | |
_ "github.com/denisenkom/go-mssqldb" | |
) | |
var (debug = flag.Bool("debug", false, "enable debugging") | |
password = flag.String("password", "","the database password") | |
port *int = flag.Int("port", 1433, "the database port") | |
server = flag.String("server", "","the database server") | |
user = flag.String("user", "","the database user") | |
) | |
func main() {flag.Parse() | |
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", *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") | |
} |
正文完