注册
Golang连接DM数据库
专栏/培训园地/ 文章详情 /

Golang连接DM数据库

_ 2023/11/10 1685 0 0
摘要

Golang环境变量

1.GOROOT:go的安装路径

linux:
在~/.bash_profile中添加下面语句配置GOROOT环境变量
GOROOT=/usr/local/go
export GOROOT
WINDOWS:
在高级系统设置-环境变量中配置GOROOT变量
变量名:GOROOT
值:C:\Program Files\Go

2.GOPATH:go的工作路径

linux:
在~/.bash_profile中添加下面语句配置GOPATH环境变量
GOPATH=/root/go
export GOPATH
WINDOWS:
在高级系统设置-环境变量中配置GOPATH变量
变量名:GOPATH
值:D:\Code\Go

3.GOPROXY

由于中国政府的网络监管系统,Go 生态系统中有着许多中国 Gopher 们无法获取的模块,比如最著名的 golang.org/x/...。并且在中国大陆从 GitHub 获取模块的速度也有点慢。因此需要配置GOPROXY来加速Module依赖下载,这里使用goproxy.cn代理。

  • Go 1.13及以上版本

    go env -w GOPROXY=https://goproxy.cn,direct

  • Go 1.13以下的版本

    export GOPROXY=https://goproxy.cn

Go Modules

go modules是 golang 1.11引入的新特性。模块是相关Go包的集合。modules是源代码交换和版本控制的单元。 go命令直接支持使用modules,包括记录和解析对其他模块的依赖性。modules替换旧的基于GOPATH的方法来指定在给定构建中使用哪些源文件。

  • GO111MODULE=off,无模块支持,go 会从 GOPATH 和 vendor 文件夹寻找包
  • GO111MODULE=on,模块支持,go 会忽略 GOPATH 和 vendor 文件夹,只根据 go.mod 下载依赖
  • GO111MODULE=auto,在 $GOPATH/src 外面且根目录有 go.mod 文件时,开启模块支持

*本次测试使用`GO111MODULE=on

Go mod

Golang 1.11 版本引入的 go mod ,其思想类似maven:摒弃vendor和GOPATH,拥抱本地库。从 Go 1.11 开始,Go 允许在 GOPATH/src中,为了兼容性,Go 命令仍然在旧的 GOPATH 模式下运行。从 Go 1.13 开始,Module模式将成为默认模式。

image.png

命令说明:download:下载依赖的moudle到本地cache

          edit:编辑go.mod文件

        graph:打印模块依赖图

      init:初始化module文件,创建go.mod

      tidy:增加丢失的module,去掉未用的module

      vendor:将依赖复制到vendor下

      verity:校验依赖

      why:解释为什么需要依赖

创建测例操作DM数据库

1.创建go工程的目录结构:

我的初始路径为D:\Code\Go:

image.png

2.在Test目录下初始化mod

image.png

3.执行Test.go

--文档中不能上传Go文件,请将附件中的Test.txt修改为Test.go
运行代码会发现 go mod 会自动查找依赖自动下载
运行Test.go

image.png

提示需获取echo包,执行提示命令获取echo包
image.png

完成后再次运行,执行成功。

1682410287861.png

然后从gitee上获取dm的驱动包

image.png

现在查看go.mod的内容

image.png

里面第一条出现了dm驱动的链接,说明驱动已经添加至mod。

下面我们就可以编写go程序去操作dm数据库实现增删改查了。

注意在程序中需应用刚刚加载至mod的dm驱动包,如图:

image.png

执行Test1.go (将附件中的Test1.txt修改为Test1.go)

执行结果如下:
image.png

Test.txtTest1.txt

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服