update initial default database

This commit is contained in:
steven 2021-12-12 12:14:40 +08:00
parent f70ad6891d
commit d2084f869b
3 changed files with 42 additions and 31 deletions

View file

@ -1,6 +1,26 @@
/* DROP TABLE IF EXISTS `queries`;
* Re-create tables and insert initial data CREATE TABLE `queries` (
*/ `id` TEXT NOT NULL PRIMARY KEY,
`user_id` TEXT NOT NULL,
`title` TEXT NOT NULL,
`querystring` TEXT NOT NULL,
`created_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`pinned_at` TEXT DEFAULT '',
FOREIGN KEY(`user_id`) REFERENCES `users`(`id`)
);
DROP TABLE IF EXISTS `memos`;
CREATE TABLE `memos` (
`id` TEXT NOT NULL PRIMARY KEY,
`content` TEXT NOT NULL,
`user_id` TEXT NOT NULL,
`created_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`deleted_at` TEXT DEFAULT '',
FOREIGN KEY(`user_id`) REFERENCES `users`(`id`)
);
DROP TABLE IF EXISTS `users`; DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` ( CREATE TABLE `users` (
`id` TEXT NOT NULL PRIMARY KEY, `id` TEXT NOT NULL PRIMARY KEY,
@ -15,34 +35,9 @@ CREATE TABLE `users` (
INSERT INTO `users` INSERT INTO `users`
(`id`, `username`, `password`) (`id`, `username`, `password`)
VALUES VALUES
('0', 'admin', '123456'),
('1', 'guest', '123456'); ('1', 'guest', '123456');
DROP TABLE IF EXISTS `memos`;
CREATE TABLE `memos` (
`id` TEXT NOT NULL PRIMARY KEY,
`content` TEXT NOT NULL,
`user_id` TEXT NOT NULL,
`created_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`deleted_at` TEXT DEFAULT '',
FOREIGN KEY(`user_id`) REFERENCES `users`(`id`)
);
INSERT INTO `memos` INSERT INTO `memos`
(`id`, `content`, `user_id`, ) (`id`, `content`, `user_id`)
VALUES VALUES
('0', '👋 Welcome to memos', '0'),
('1', '👋 Welcome to memos', '1'); ('1', '👋 Welcome to memos', '1');
DROP TABLE IF EXISTS `queries`;
CREATE TABLE `queries` (
`id` TEXT NOT NULL PRIMARY KEY,
`user_id` TEXT NOT NULL,
`title` TEXT NOT NULL,
`querystring` TEXT NOT NULL,
`created_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
`pinned_at` TEXT DEFAULT '',
FOREIGN KEY(`user_id`) REFERENCES `users`(`id`)
);

Binary file not shown.

View file

@ -2,7 +2,9 @@ package store
import ( import (
"database/sql" "database/sql"
"io/ioutil"
"os" "os"
"path/filepath"
_ "github.com/mattn/go-sqlite3" _ "github.com/mattn/go-sqlite3"
) )
@ -18,7 +20,6 @@ func InitDBConn() {
if _, err := os.Stat(dbFilePath); err != nil { if _, err := os.Stat(dbFilePath); err != nil {
dbFilePath = "./resources/memos.db" dbFilePath = "./resources/memos.db"
resetDataInDefaultDatabase()
println("use the default database") println("use the default database")
} else { } else {
println("use the custom database") println("use the custom database")
@ -32,6 +33,10 @@ func InitDBConn() {
DB = db DB = db
println("connect to sqlite succeed") println("connect to sqlite succeed")
} }
if dbFilePath == "./resources/memos.db" {
resetDataInDefaultDatabase()
}
} }
func FormatDBError(err error) error { func FormatDBError(err error) error {
@ -46,5 +51,16 @@ func FormatDBError(err error) error {
} }
func resetDataInDefaultDatabase() { func resetDataInDefaultDatabase() {
// do nth initialSQLFilePath := filepath.Join("resources", "initial_db.sql")
c, err := ioutil.ReadFile(initialSQLFilePath)
if err != nil {
// do nth
return
}
sql := string(c)
DB.Exec(sql)
println("Initial data succeed")
} }