golang连接sm3认证加密(app)

环境

系统平台:Linux x86-64 Red Hat Enterprise Linux 7
版本:4.5

文档用途

golang连接安全版sm3认证加密数据库,驱动程序详见附件。

详细信息

1.下载Linux golang安装包 go1.17.3.linux-amd64.tar.gz

1.1. 解压安装包

tar xvf go1.17.3.linux-amd64.tar.gz -C /opt/apps/go

1.2. 创建路径

mkdir /opt/dev/go -p

1.3. 添加环境变量

vim ~/.bashrc
export GOROOT=/opt/apps/go
export PATH=$PATH:/opt/apps/go/bin
export GOPATH=/opt/dev/go
source ~/.bashrc

2.将解压后的pq目录放到如下路径

mkdir /opt/dev/go/src/github.com/lib/pq

3.测试:将如下代码保存为go文件执行

package main
import (
    "database/sql"
    "fmt"
    _ "github.com/lib/pq"
)
const (
    host     = "x.x.21.138"
    port     = 5871
    user     = "test"
    password = "hg123456"
    dbname   = "test"
)
func connectDB() *sql.DB{
    psqlInfo := fmt.Sprintf("host=%s port=%d user=%s password=%s dbname=%s sslmode=disable",host, port, user, password, dbname)
    db, err := sql.Open("postgres", psqlInfo)
    if err != nil {
        panic(err)
    }
    err = db.Ping()
    if err != nil {
        panic(err)
    }
    fmt.Println("Successfully connected!")
    return db
}
func query(db *sql.DB){
    var name string
    rows,err:=db.Query("select '数据库版本:['||version()||']' as name")
    if err!= nil{
        fmt.Println(err)
    }
    defer rows.Close()
    for rows.Next(){
        err:= rows.Scan(&name)
        if err!= nil{
            fmt.Println(err)
        }
    }
    err = rows.Err()
    if err!= nil{
        fmt.Println(err)
    }
    fmt.Println(name)
}
func main()  {
    db:=connectDB()
    query(db)
}

4.运行结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值