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

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

相关推荐
独泪了无痕3 小时前
Spring Data Redis 快速上手
spring boot·redis·后端
2501_944521593 小时前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
行思理3 小时前
go语言学习难度及适合学习的人群
开发语言·学习·golang
wangchunyu1145 小时前
JAVA CompletableFuture异步编程实战
java·开发语言·python
程序 代码狂人6 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法
m0_639906947 小时前
Linux 操作系统入门:目录结构、服务排查常用命令、Shell 脚本基础
linux·运维·后端
meiying88387 小时前
快递单号批量查询Python脚本:从手动到自动化的完整实现
开发语言·python·自动化
holly就是我8 小时前
AI 编程助手为什么跑偏?用开源 ccglass 看清 Prompt、工具调用和 Token 消耗
人工智能·后端
鸿蒙开发8 小时前
共享 Schema 与 SchemaFactory
前端·后端·harmonyos
用户788477316348 小时前
小程序后端三选一:云开发、.NET WebAPI、Node,我按客户现状分了三种答案
后端