【发布时间】:2014-06-24 16:10:11
【问题描述】:
我正在尝试使用 odbc 驱动程序,但出现错误:
.\main.go:5: imported and not used: "code.google.com/p/odbc/api"
.\main.go:72: undefined: Driver
.\main.go:76: undefined: Driver
我尝试使用另一个驱动程序:go get github.com/denisenkom/go-mssqldb,但遇到了相同类型的问题。
这就是为什么我怀疑我没有设置正确的环境但无法找到问题。
我的环境:
set GOARCH=amd64
set GOBIN=
set GOCHAR=6
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=C:\Go\Projects
set GORACE=
set GOROOT=C:\Go
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set TERM=dumb
set CC=gcc
set GOGCCFLAGS=-g -O2 -m64 -mthreads
set CXX=g++
set CGO_ENABLED=1
我使用go get code.google.com/p/odbc安装了odbc
跑了测试,结果很好:C:\Go\Projects\src\code.google.com\p\odbc>go test -mssrv=.\sqlexp -v -run=MS
...
--- PASS: TestMSSQLUTF16ToUTF8 (0.00 seconds)
=== RUN TestMSSQLExecStoredProcedure
--- PASS: TestMSSQLExecStoredProcedure (0.01 seconds)
PASS
ok code.google.com/p/odbc 0.574s
我的代码: (复制自 mssql_test.go):
package main
import (
"code.google.com/p/odbc/api"
"database/sql"
"flag"
"fmt"
"os"
"runtime"
"testing"
"time"
)
func mssqlConnect() (db *sql.DB, stmtCount int, err error) {
.........
return db, db.Driver().(*Driver).Stats.StmtCount, nil
}
func closeDB(t *testing.T, db *sql.DB, shouldStmtCount, ignoreIfStmtCount int) {
s := db.Driver().(*Driver).Stats
......
【问题讨论】:
标签: sql-server go odbc package