refactor(database): move database initialization functions to single file

Consolidate InitFrpcDatabase and InitUserDatabase functions into database.go for better code organization and maintainability. Remove duplicate code from frpc.go.
This commit is contained in:
2026-02-27 21:16:27 +08:00
parent 4c041ee922
commit 6947577377
2 changed files with 63 additions and 57 deletions
-34
View File
@@ -49,40 +49,6 @@ type FrpcInstance struct {
var frpcDB *sql.DB
func InitFrpcDatabase(dbPath string) error {
var err error
frpcDB, err = sql.Open("sqlite", dbPath)
if err != nil {
return fmt.Errorf("failed to open frpc database: %w", err)
}
if err = frpcDB.Ping(); err != nil {
return fmt.Errorf("failed to ping frpc database: %w", err)
}
createTableSQL := `
CREATE TABLE IF NOT EXISTS frpcInstances (
id INTEGER PRIMARY KEY AUTOINCREMENT,
userID INTEGER NOT NULL,
name TEXT NOT NULL,
serverAddr TEXT NOT NULL,
serverPort TEXT NOT NULL,
auth_method TEXT NOT NULL,
bootAtStart INTEGER NOT NULL DEFAULT 0,
runUser TEXT NOT NULL DEFAULT 'root',
configPath TEXT NOT NULL,
createdAt TEXT NOT NULL,
UNIQUE(userID, name)
);
`
_, err = frpcDB.Exec(createTableSQL)
if err != nil {
return fmt.Errorf("failed to create frpcInstances table: %w", err)
}
return nil
}
func CloseFrpcDatabase() error {
if frpcDB != nil {
return frpcDB.Close()