package db import ( "file-manger-server/domain" "log" "os" "xorm.io/xorm" _ "github.com/glebarez/sqlite" ) var Engin *xorm.Engine func Open() { file, _ := os.OpenFile("file/file.db", os.O_CREATE, 0666) file.Close() // 连接SQLite数据库 engine, err := xorm.NewEngine("sqlite", "file/file.db") if err != nil { log.Fatalf("数据库连接失败: %v", err) } //defer engine.Close() Engin = engine Engin.ShowSQL(true) Engin.Logger().ShowSQL(true) // 同步结构体到数据库 if err := engine.Sync2( new(domain.User), new(domain.File), new(domain.FileUser), ); err != nil { log.Fatalf("同步失败: %v", err) } } func Close() { err := Engin.Close() if err != nil { return } }