golang通过odbc连接informix数据库
package mainimport ("database/sql""fmt"_ "github.com/alexbrainman/odbc")func main() {var nombre stringfmt.Println(" Conexion Go al Informix ")db, err := sql.Open("odbc", "DSN=Infdrv1;locale=es_ES.819;
·
Widnows配置informix的odbc数据源
- 安装ibm.csck (注明:我的百度网盘里面有windows版介质)
- 配置IBM Informix Setnet32
- 配置ODBC数据源管理程序64,添加数据源(注意环境全用en_US.819 zh_CN.utf8)
- 然后用go连接odbc即可:db, err := sql.Open(“odbc”, “DSN=informix;locale=en_US.819;”)
- 注明,只需要改DSN即数据源名称即可。
package main
import (
"database/sql"
"fmt"
_ "github.com/alexbrainman/odbc"
)
func main() {
var nombre string
//fmt.Println(" Conexion Go al Informix ")
dbRead, err := sql.Open("odbc", "DSN=gbase8s;")
if err != nil {
panic(err.Error())
}
err = dbRead.Ping()
if err != nil {
fmt.Println("error en el ping : ", err)
}
dbWrite, err := sql.Open("odbc","DSN=informix;")
if err != nil {
panic(err.Error())
}
err = dbWrite.Ping()
if err != nil {
fmt.Println("error en el ping : ", err)
}
//Query a ejecutar
rows, err := dbRead.Query("select name from t1;")
if err != nil {
fmt.Println("No va la Query :( ", err)
}
//Parse
defer rows.Close()
for rows.Next() {
err := rows.Scan(&nombre)
if err != nil {
fmt.Println("Error al parsear :( ", err)
}
fmt.Println(nombre)
_, err = dbWrite.Exec("insert into t1(name) values('" + nombre + "');")
if err != nil {
fmt.Println("dbWrit Error al parsear :( ", err)
}
}
err = rows.Err()
if err != nil {
fmt.Println(err)
}
//cerrar conexion
defer dbRead.Close()
defer dbWrite.Close()
}
更多推荐
已为社区贡献1条内容
所有评论(0)