Golang连接使用SqlCipher

一、准备环境

  • 需要下载MinGW、msys2、OpenSSL,并且注意都需要64位

已经整理成环境软件包,只需要下载,并配置环境变量

链接: https://pan.baidu.com/s/1NxF8aWqx7s97ntACOk77Ug 提取码: yhrv

二、代码

go 复制代码
package main

import (
	"database/sql"
	"fmt"
	_ "github.com/xeodou/go-sqlcipher"
)

func main() {
	db, err := sql.Open("sqlite3", "test.db?_key=123456")
	if err != nil {
		fmt.Println(err)
	}
	defer db.Close()

	c := "CREATE TABLE IF NOT EXISTS `users` (`id` INTEGER PRIMARY KEY, `name` char, `password` chart, UNIQUE(`name`));"
	_, err = db.Exec(c)
	if err != nil {
		fmt.Println(err)
		return
	}
	d := "INSERT INTO `users` (name, password) values('xeodou', 123456);"
	_, err = db.Exec(d)
	if err != nil {
		fmt.Println(err)
	}

	e := "select name, password from users where name='xeodou';"
	rows, err := db.Query(e)
	if err != nil {
		fmt.Println(err)
	}
	defer rows.Close()
	for rows.Next() {
		var name string
		var password string
		rows.Scan(&name, &password)
		fmt.Print("{\"name\":\"" + name + "\", \"password\": \"" + password + "\"}")
	}
	rows.Close()
}

三、注意事项

  • 这个环境包有1G多
  • 和Gorm结合测试没有成功

最后,还请不吝赐教,祝福大家开发顺利

相关推荐
老友@8 分钟前
从 Word 到 HTML:使用 Aspose.Words 轻松实现 Word 文档的高保真转换
java·后端·性能优化·html·word·aspose·格式转换
sunbin13 分钟前
doc文档转换为html文档
后端
Asthenia041213 分钟前
面试复习:游标是什么?什么是深度分页?如何用游标解决深度分页?(以 InnoDB 为例)
后端
xfq15 分钟前
[ai] cline使用总结(包括mcp)
前端·后端·ai编程
weiran199915 分钟前
手把手的建站思路和dev-ops方案
前端·后端·架构
HashFlag18 分钟前
Go常用的设计模式
开发语言·设计模式·golang
自不量力的A同学19 分钟前
Next.js 中间件曝高危漏洞 CVE-2025-29927,授权绕过风险波及全版本
开发语言·javascript·中间件
LIUJH123328 分钟前
哈希冲突 及 双哈希
开发语言·数据结构·c++·算法·哈希算法
java1234_小锋28 分钟前
一周学会Flask3 Python Web开发-SQLAlchemy数据迁移migrate
开发语言·前端·python·flask·flask3
GGGGGGGGGGGGGG.30 分钟前
深入解析VLAN接口类型与数据处理机制
开发语言·智能路由器·php