Window环境下安装mattn/go-oci8库

2023-11-03 17:31
文章标签 go 安装 环境 window mattn oci8

本文主要是介绍Window环境下安装mattn/go-oci8库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

概述

  • mattn/go-oci8库是在go语言中,连接oracle数据库的驱动程序,之前在另外一个篇 mattn / go-oci8 库安装 (用于go连接oracle数据库) 介绍了在linux环境如何编译和安装,这次我们在Windows环境下进行安装。
环境准备
  • GCC编译环境
  • PKG-CONFIG 程序 百度网盘提取码: r4fr
  • Oracle InstanceClient 这里我用的是截止目前最新的19.6版本
  • Oracle SDK 这里我用的是截止目前最新的19.6版本
安装配置
  • GCC编译环境
    解压下载下来的mingw-v64-v7.0.0.zip文件到文件系统,我这里解压到了了C盘
    添加mingw64到环境变量PATH
    在这里插入图片描述
  • 添加pkg-config程序
    将解压后的PKG-CONFIG.zip的内容提取到GCC的bin目录下,包括其中的libglib-2.0-0.dll文件
  • 配置Oracle InstanceClient
    解压下载下来的instantclient-basic-windows.x64-19.6.0.0.0dbru.zip和instantclient-sdk-windows.x64-19.6.0.0.0dbru.zip文件到同一文件系统的目录中去,我这里解压到了D盘根目录下D:\instantclient_19_6,添加该路径到环境变量PATH
    在这里插入图片描述
  • 配置oci.pc8文件
prefix=/devel/target/XXXXXXXXXXXXXXXXXXXXXXXXXX
exec_prefix=${prefix}
libdir=D:/instantclient_19_6/sdk/lib/msvc
includedir=D:/instantclient_19_6/sdk/includeglib_genmarshal=glib-genmarshal
gobject_query=gobject-query
glib_mkenums=glib-mkenumsName: oci8
Description: oci8 library
Libs: -L${libdir} -loci
Cflags: -I${includedir}
Version: 19.6

其中主要配置libdir以及includedir,指向oracleInstanceClient客户端的lib目录以及sdk目录

  • 配置PKG_CONFIG_PATH环境变量指向oci.pc8文件
  • 执行go get github.com/mattn/go-oci8 进行在线安装

测试代码

package main
import ("database/sql""log""fmt"_ "github.com/mattn/go-oci8"
)func main(){sqlconn := "demo/demo@172.17.0.3:1521/orcl"db, err := sql.Open("oci8", sqlconn)if err != nil {log.Fatalln(err)}defer db.Close()sql := "select sysdate from dual"rows, err := db.Query(sql)if err != nil {log.Fatalln(err)}defer rows.Close()for rows.Next() {var re stringrows.Scan(&re)fmt.Println(re)}if err = rows.Err(); err != nil {log.Fatalln(err)}
}

这篇关于Window环境下安装mattn/go-oci8库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/339791

相关文章

如何在Mac上安装并配置JDK环境变量详细步骤

《如何在Mac上安装并配置JDK环境变量详细步骤》:本文主要介绍如何在Mac上安装并配置JDK环境变量详细步骤,包括下载JDK、安装JDK、配置环境变量、验证JDK配置以及可选地设置PowerSh... 目录步骤 1:下载JDK步骤 2:安装JDK步骤 3:配置环境变量1. 编辑~/.zshrc(对于zsh

go 指针接收者和值接收者的区别小结

《go指针接收者和值接收者的区别小结》在Go语言中,值接收者和指针接收者是方法定义中的两种接收者类型,本文主要介绍了go指针接收者和值接收者的区别小结,文中通过示例代码介绍的非常详细,需要的朋友们下... 目录go 指针接收者和值接收者的区别易错点辨析go 指针接收者和值接收者的区别指针接收者和值接收者的

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

如何在pycharm安装torch包

《如何在pycharm安装torch包》:本文主要介绍如何在pycharm安装torch包方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录在pycharm安装torch包适http://www.chinasem.cn配于我电脑的指令为适用的torch包为总结在p

在PyCharm中安装PyTorch、torchvision和OpenCV详解

《在PyCharm中安装PyTorch、torchvision和OpenCV详解》:本文主要介绍在PyCharm中安装PyTorch、torchvision和OpenCV方式,具有很好的参考价值,... 目录PyCharm安装PyTorch、torchvision和OpenCV安装python安装PyTor

Python Transformer 库安装配置及使用方法

《PythonTransformer库安装配置及使用方法》HuggingFaceTransformers是自然语言处理(NLP)领域最流行的开源库之一,支持基于Transformer架构的预训练模... 目录python 中的 Transformer 库及使用方法一、库的概述二、安装与配置三、基础使用:Pi

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

Go 语言中的select语句详解及工作原理

《Go语言中的select语句详解及工作原理》在Go语言中,select语句是用于处理多个通道(channel)操作的一种控制结构,它类似于switch语句,本文给大家介绍Go语言中的select语... 目录Go 语言中的 select 是做什么的基本功能语法工作原理示例示例 1:监听多个通道示例 2:带

如何解决mmcv无法安装或安装之后报错问题

《如何解决mmcv无法安装或安装之后报错问题》:本文主要介绍如何解决mmcv无法安装或安装之后报错问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mmcv无法安装或安装之后报错问题1.当我们运行YOwww.chinasem.cnLO时遇到2.找到下图所示这里3.