diff --git a/src/database/db.ts b/src/database/db.ts index b4056b04..f4a722ed 100644 --- a/src/database/db.ts +++ b/src/database/db.ts @@ -2,7 +2,6 @@ import * as SQLite from 'expo-sqlite'; import { createCategoriesTableQuery, createCategoryDefaultQuery, - createCategoryLocalQuery, createCategoryTriggerQuery, } from './tables/CategoryTable'; import { createNovelTableQuery } from './tables/NovelTable'; @@ -24,7 +23,6 @@ export const createTables = () => { tx.executeSql(createNovelTableQuery); tx.executeSql(createCategoriesTableQuery, [], () => { tx.executeSql(createCategoryDefaultQuery); - tx.executeSql(createCategoryLocalQuery); tx.executeSql(createCategoryTriggerQuery); }); tx.executeSql(createNovelCategoryTableQuery); diff --git a/src/database/tables/CategoryTable.ts b/src/database/tables/CategoryTable.ts index 0a60679e..cc0c8686 100644 --- a/src/database/tables/CategoryTable.ts +++ b/src/database/tables/CategoryTable.ts @@ -15,10 +15,9 @@ export const createCategoryTriggerQuery = ` END; `; -export const createCategoryDefaultQuery = `INSERT OR IGNORE INTO Category (id, name, sort) VALUES (1, "${getString( - 'categories.default', -)}", 1)`; - -export const createCategoryLocalQuery = `INSERT OR IGNORE INTO Category (id, name, sort) VALUES (2, "${getString( - 'categories.local', -)}", 2)`; +// if category with id = 2 exists, nothing in db.ts file is executed +export const createCategoryDefaultQuery = ` +INSERT INTO Category (id, name, sort) VALUES + (1, "${getString('categories.default')}", 1), + (2, "${getString('categories.local')}", 2) +`; diff --git a/src/database/tables/ChapterTable.ts b/src/database/tables/ChapterTable.ts index be303dba..391550b9 100644 --- a/src/database/tables/ChapterTable.ts +++ b/src/database/tables/ChapterTable.ts @@ -11,6 +11,7 @@ export const createChapterTableQuery = ` isDownloaded INTEGER DEFAULT 0, updatedTime TEXT, chapterNumber REAL NULL, + page INTEGER DEFAULT 1, FOREIGN KEY (novelId) REFERENCES Novel(id) ON DELETE CASCADE ) `; diff --git a/src/database/tables/NovelTable.ts b/src/database/tables/NovelTable.ts index c3aceaad..983e5168 100644 --- a/src/database/tables/NovelTable.ts +++ b/src/database/tables/NovelTable.ts @@ -11,6 +11,7 @@ export const createNovelTableQuery = ` status TEXT Default 'Unknown', genres TEXT, inLibrary INTEGER DEFAULT 0, - isLocal INTERGER DEFAULT 0 + isLocal INTEGER DEFAULT 0, + totalPages INTEGER DEFAULT 1 ); `; diff --git a/src/services/updates/LibraryUpdateQueries.ts b/src/services/updates/LibraryUpdateQueries.ts index ff5519d7..eda10d87 100644 --- a/src/services/updates/LibraryUpdateQueries.ts +++ b/src/services/updates/LibraryUpdateQueries.ts @@ -67,7 +67,7 @@ const updateNovel = async ( novel.chapters?.forEach(chapter => { const { name, url, releaseTime } = chapter; tx.executeSql( - "INSERT OR IGNORE INTO Chapter (url, name, releaseTime, novelId, updatedTime) values (?, ?, ?, ?, datetime('now','localtime'))", + "INSERT OR REPLACE INTO Chapter (url, name, releaseTime, novelId, updatedTime) values (?, ?, ?, ?, datetime('now','localtime'))", [url, name, releaseTime || '', novelId], (txObj, { insertId }) => { if (insertId && downloadNewChapters) {