Skip to content

JSchmidt63/gorm-sqlite3-n

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gorm-sqlite3-n

SQLCipher、wxSQLite3

Install

go get github.com/YGoldking/gorm-sqlite3-n

wxSQLite3 (to)

ps: 默认为AES128加密

package main

import (
	"fmt"
	"github.com/YGoldking/gorm-sqlite3-n/wxSQLite3"
	"gorm.io/gorm"
	"log"
	"net/url"
)

func main() {
    var db *gorm.DB
    var err error
    
    key := url.QueryEscape("pass")
    path := "./dbtest.db"
    dsn := fmt.Sprintf("%s?_db_key=%s", path, key)
    
    db, err = gorm.Open(wxSQLite3.Open(dsn), &gorm.Config{})
    if err != nil {
    log.Fatal(err)
    }
    
    type Users struct {
    Id     int64  `json:"id"`
    Name string `json:"name"`
    }
    var list []Users
    
    db.Table("users").Find(&list)
    fmt.Println(list)
}

SQLCipher (to)

package main

import (
	"fmt"
	"github.com/YGoldking/gorm-sqlite3-n/SQLCipher"
	"gorm.io/gorm"
	"log"
	"net/url"
)

func main() {
    var db *gorm.DB
    var err error

	key := url.QueryEscape("pass")
	path := "./dbtest.db"
    dsn := fmt.Sprintf("%s?_pragma_key=%s", path, key)
    
    db, err = gorm.Open(SQLCipher.Open(dsn), &gorm.Config{})
    if err != nil {
    log.Fatal(err)
    }
    
    type Users struct {
    Id     int64  `json:"id"`
    Name string `json:"name"`
    }
    var list []Users
    
    db.Table("users").Find(&list)
    fmt.Println(list)
}

About

SQLCipher、wxSQLite3

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published