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结合测试没有成功

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

相关推荐
码事漫谈6 小时前
勿删
后端
IT_陈寒9 小时前
用了Proxy才发现以前的JavaScript白写了
前端·人工智能·后端
唐青枫10 小时前
别把 ArrayList 当成会自动管理内存的 List:Zig 动态数组从入门到实战
后端
鸿蒙开发10 小时前
我为 HarmonyOS 做了一个统一大模型 SDK:@hmkit/ai 正式开源
后端
猪是念来过倒10 小时前
Semaphore 与 RateLimiter:并发控制双雄详解
后端
掘金者阿豪10 小时前
异构数据同步最怕什么?不是同步慢,而是数据对不上
后端
程序员cxuan11 小时前
Claude 官方的学习教程,太强了。
人工智能·后端·程序员
老孙讲技术11 小时前
把工地遮挡和掉线接进项目部:setMessageCallback 订 alarm 与 deviceStatus
后端·物联网·音视频开发
老孙讲技术11 小时前
关店后有人进门,监控值班群却没响:用 setMessageCallback 订 human,再用 aiHuman 打开人形
后端·物联网·音视频开发
LEE11 小时前
原来 Claude Code 最厉害的工具,一行代码都不写
前端·后端