当前位置: 首页 > news >正文

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     = 5871user     = "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 stringrows,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.运行结果
在这里插入图片描述

http://www.dtcms.com/a/222729.html

相关文章:

  • ReactJS 中的 JSX工作原理
  • 简单配置RHEL9.X
  • 痛点即爆点?如何挖掘客户的痛点和需求?
  • FEMFAT许可分析的数据可视化方法
  • python学习day33
  • AI生态警报:MCP协议风险与应对指南(中)——MCP Server运行时安全​​
  • 【专题】深度学习期末复习资料(题库)
  • 从0开始学习R语言--Day12--泊松分布
  • OptiStruct实例:消声器前盖ERP分析(2)RADSND基础理论
  • Rust 编程实现猜数字游戏
  • kanass V1.1.3版本发布,支持需求评审和Jira的数据导入
  • 脱发因素机器学习数据分析
  • 小程序33-列表渲染
  • OpenCV---pointPolygonTest
  • 【Linux 学习计划】-- 命令行参数 | 环境变量
  • 使用基于Xsens惯性传感器的动作捕捉技术测量人体工程学
  • 多模态大语言模型arxiv论文略读(101)
  • 24位高精度数据采集卡NET8860音频振动信号采集监测满足自动化测试应用现场的多样化需求
  • 【开发心得】AstrBot对接飞书失败的问题探究
  • 深入理解Transformer架构:从原理到实践
  • Science Advances 上海理工大学与美国杜克大学(Duke University)共同开发了一种仿生复眼相机
  • OrCAD X Capture CIS 设计小诀窍第二季 | 10. 如何自动将 270° 放置的网络名称修正为 90°
  • 桌面文件无法删除怎样解决?
  • 【灵动Mini-F5265-OB】SPI驱动ST7735LCD屏
  • 2025低代码平台核心技术对比:模型驱动 vs 表单驱动 vs AI原生架构
  • 从零到一:我的技术博客导航(持续更新)
  • STM32通过rt_hw_hard_fault_exception中的LR寄存器追溯程序问题​
  • Python中的变量、赋值及函数的参数传递概要
  • 副本(Replica)在Elasticsearch中扮演什么角色?
  • 会议室钥匙总丢失?换预约功能的智能门锁更安全