mirror of
https://github.com/Starlio-app/StarlioX
synced 2024-11-22 08:46:22 +03:00
75 lines
1.4 KiB
Go
75 lines
1.4 KiB
Go
package functions
|
|
|
|
import (
|
|
"database/sql"
|
|
_ "github.com/mattn/go-sqlite3"
|
|
)
|
|
|
|
func Database() {
|
|
db, err := sql.Open("sqlite3", "EveryNasa.db")
|
|
if err != nil {
|
|
Logger(err.Error())
|
|
}
|
|
|
|
if !TableExists(db, "settings") {
|
|
sqlTable := `
|
|
CREATE TABLE IF NOT EXISTS settings (
|
|
startup INTEGER DEFAULT 0,
|
|
wallpaper INTEGER DEFAULT 0,
|
|
save_logg INTEGER DEFAULT 1,
|
|
analytics INTEGER DEFAULT 1
|
|
);`
|
|
|
|
_, err = db.Exec(sqlTable)
|
|
if err != nil {
|
|
Logger(err.Error())
|
|
}
|
|
|
|
stmt, err := db.Prepare("INSERT INTO settings(startup, wallpaper, save_logg, analytics) values(?,?,?,?)")
|
|
if err != nil {
|
|
Logger(err.Error())
|
|
}
|
|
|
|
_, err = stmt.Exec(0, 0, 1, 1)
|
|
if err != nil {
|
|
Logger(err.Error())
|
|
}
|
|
}
|
|
|
|
if !TableExists(db, "favorite") {
|
|
sqlTable := `
|
|
CREATE TABLE IF NOT EXISTS favorite (
|
|
title TEXT,
|
|
explanation TEXT,
|
|
copyright TEXT,
|
|
date TEXT,
|
|
url TEXT,
|
|
hdurl TEXT,
|
|
media_type TEXT
|
|
);`
|
|
|
|
_, err = db.Exec(sqlTable)
|
|
if err != nil {
|
|
Logger(err.Error())
|
|
}
|
|
}
|
|
}
|
|
|
|
func GetDatabase() *sql.DB {
|
|
db, err := sql.Open("sqlite3", "EveryNasa.db")
|
|
if err != nil {
|
|
Logger(err.Error())
|
|
}
|
|
|
|
return db
|
|
}
|
|
|
|
func TableExists(db *sql.DB, name string) bool {
|
|
var exists bool
|
|
err := db.QueryRow("SELECT EXISTS(SELECT name FROM sqlite_master WHERE type='table' AND name=?)", name).Scan(&exists)
|
|
if err != nil {
|
|
Logger(err.Error())
|
|
}
|
|
|
|
return exists
|
|
}
|