embedded schema.sql
This commit is contained in:
@@ -1,22 +1,29 @@
|
||||
package database
|
||||
|
||||
import (
|
||||
"GoMembership/internal/config"
|
||||
"GoMembership/pkg/logger"
|
||||
"database/sql"
|
||||
"os"
|
||||
|
||||
"GoMembership/internal/config"
|
||||
"GoMembership/pkg/logger"
|
||||
|
||||
"embed"
|
||||
|
||||
_ "github.com/mattn/go-sqlite3"
|
||||
)
|
||||
|
||||
func initializeDB(dbPath string, schemaPath string) error {
|
||||
//go:embed schema.sql
|
||||
var fs embed.FS
|
||||
|
||||
func initializeDB(dbPath string) error {
|
||||
|
||||
db, err := sql.Open("sqlite3", dbPath)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer db.Close()
|
||||
|
||||
schema, err := os.ReadFile(schemaPath)
|
||||
schema, err := fs.ReadFile("schema.sql")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -30,7 +37,7 @@ func initializeDB(dbPath string, schemaPath string) error {
|
||||
func Connect(DBcfg config.DatabaseConfig) *sql.DB {
|
||||
_, err := os.Stat(DBcfg.DBPath)
|
||||
if os.IsNotExist(err) {
|
||||
initErr := initializeDB(DBcfg.DBPath, "internal/database/schema.sql")
|
||||
initErr := initializeDB(DBcfg.DBPath)
|
||||
if initErr != nil {
|
||||
logger.Error.Fatalf("Couldn't create database: %v", initErr)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user