unixOBC、Golang、Informix、Ubuntu

unixOBC、Golang、Informix、Ubuntu,ubuntu,go,odbc,informix,Ubuntu,Go,Odbc,Informix,我目前正在尝试ping informix数据库 db, err := sql.Open("odbc","DNS=x") if err != ni { log.Fatal(err) } if err := db.Ping(); err != nil { log.Printf("ping failed %#v", err) } else { log.Printf("ping success") } defer db.Close() 我得到一个像这样的错误 State: "H",

我目前正在尝试ping informix数据库

db, err := sql.Open("odbc","DNS=x")

if err != ni { 
  log.Fatal(err)
}

if err := db.Ping(); err != nil {
  log.Printf("ping failed %#v", err)
} else {
  log.Printf("ping success")
}

defer db.Close()
我得到一个像这样的错误

State: "H", NativeError:"-11060", Message:"[unixODBC]["

isql工作得很好,但是通过alexbrainman odbc驱动程序,我没有得到任何运气。Windows也可以正常工作。任何帮助都将不胜感激。

这是一个配置问题。显然,根据informix文档,odbc.ini必须在UCS-2或UCS-4中编码。这就是unixODBC使用配置文件的方式

接近odbc.ini的末尾时,有一个[odbc]部分,像这样取消对UNICODE选项的注释

;
; UNICODE connection Section
;
[ODBC]
;uncomment the below line for UNICODE connection
UNICODE=UCS-2
;
; Trace file Section
;
Trace=0
TraceFile=/tmp/odbctrace.out
InstallDir=/extra/informix
TRACEDLL=idmrs09a.so
看,python的东西其实并不重要。