golang 链接oracle

原创
2016/03/25 13:46
阅读数 157

1.安装git 2.下载最新版的OCI 下载地址是http://www.oracle.com/technetwork/cn/database/winx64soft-089540.html 需要下载instantclient-basic和instantclient-sdk两个zip文件,下载后将两个包解压,然后将sdk中的文件sdk文件夹放到instantclient_12_1下,形成instantclient_12_1/sdk目录级 然后将instantclient_12_1文件夹改名为instantclient_11_2并放到了C盘的跟目录下 3.下载MinGW 4.https://github.com/wendal/go-oci8下载pkg-config.exe和oci8.pc 5.下载后进行以下操作 将pkg-config.exe复制到mingw\bin\下 将oci8.pc复制到mingw\lib\pkg-config\下(我的pkg-config是新建的因为原来没有) 6.添加系统环境变量 PATH=原有PATH;C:\instantclient_11_2;D:\MinGW\bin; (读者根据自己的目录变换一下) PKG_CONFIG_PATH=D:\MinGW\lib\pkg-config(读者根据自己的目录变换一下) 7.go get github.com/wendal/go-oci8

如运行中 出现 src\github.com\wendal\go-oci8\oci8.go:119: cannot use (C.struct_OCIServer)(unsafe.Pointer(&conn.svc)) (type C.struct_OCIServer) as type *C.struct_OCISvcCtx in argument to _Cfunc_OCILogon src\github.com\wendal\go-oci8\oci8.go:136: cannot use (C.struct_OCIServer)(c.svc) (type C.struct_OCIServer) as type C.struct_OCISvcCtx in argument to _Cfunc_OCILogoff src\github.com\wendal\go-oci8\oci8.go:263: cannot use (C.struct_OCIServer)(s.c.svc) (type C.struct_OCIServer) as type C.struct_OCISvcCtx in argument to _Cfunc_OCIStmtExecute src\github.com\wendal\go-oci8\oci8.go:383: cannot use (C.struct_OCIServer)(s.c.svc) (type C.struct_OCIServer) as type C.struct_OCISvcCtx in argument to _Cfunc_OCIStmtExecute

修改oci8.go中OCIServer为OCISvcCtx

如果读取数据后 中文乱码 使用 os.Setenv("NLS_LANG", "SIMPLIFIED CHINESE_CHINA.AL32UTF8")

展开阅读全文
打赏
1
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
1
分享
返回顶部
顶部