mirror of
https://github.com/YACReader/yacreader
synced 2025-06-04 01:28:55 -04:00
resort db tables creation
This commit is contained in:
parent
e130698ee9
commit
b8031268d0
@ -124,99 +124,98 @@ QSqlDatabase DataBaseManagement::loadDatabaseFromFile(QString filePath)
|
|||||||
|
|
||||||
bool DataBaseManagement::createTables(QSqlDatabase & database)
|
bool DataBaseManagement::createTables(QSqlDatabase & database)
|
||||||
{
|
{
|
||||||
bool success = true;
|
bool success = true;
|
||||||
|
|
||||||
//FOLDER (representa una carpeta en disco)
|
{
|
||||||
{
|
//COMIC INFO (representa la información de un cómic, cada cómic tendrá un idéntificador único formado por un hash sha1'de los primeros 512kb' + su tamaño en bytes)
|
||||||
QSqlQuery queryFolder(database);
|
QSqlQuery queryComicInfo(database);
|
||||||
queryFolder.prepare("CREATE TABLE folder ("
|
queryComicInfo.prepare("CREATE TABLE comic_info ("
|
||||||
"id INTEGER PRIMARY KEY,"
|
"id INTEGER PRIMARY KEY,"
|
||||||
"parentId INTEGER NOT NULL,"
|
"title TEXT,"
|
||||||
"name TEXT NOT NULL,"
|
|
||||||
"path TEXT NOT NULL,"
|
|
||||||
//new 7.1 fields
|
|
||||||
"finished BOOLEAN DEFAULT 0," //reading
|
|
||||||
"completed BOOLEAN DEFAULT 1," //collecting
|
|
||||||
//--
|
|
||||||
"FOREIGN KEY(parentId) REFERENCES folder(id) ON DELETE CASCADE)");
|
|
||||||
success = success && queryFolder.exec();
|
|
||||||
|
|
||||||
//COMIC INFO (representa la información de un cómic, cada cómic tendrá un idéntificador único formado por un hash sha1'de los primeros 512kb' + su tamaño en bytes)
|
"coverPage INTEGER DEFAULT 1,"
|
||||||
QSqlQuery queryComicInfo(database);
|
"numPages INTEGER,"
|
||||||
queryComicInfo.prepare("CREATE TABLE comic_info ("
|
|
||||||
"id INTEGER PRIMARY KEY,"
|
|
||||||
"title TEXT,"
|
|
||||||
|
|
||||||
"coverPage INTEGER DEFAULT 1,"
|
"number INTEGER,"
|
||||||
"numPages INTEGER,"
|
"isBis BOOLEAN,"
|
||||||
|
"count INTEGER,"
|
||||||
|
|
||||||
"number INTEGER,"
|
"volume TEXT,"
|
||||||
"isBis BOOLEAN,"
|
"storyArc TEXT,"
|
||||||
"count INTEGER,"
|
"arcNumber INTEGER,"
|
||||||
|
"arcCount INTEGER,"
|
||||||
|
|
||||||
"volume TEXT,"
|
"genere TEXT,"
|
||||||
"storyArc TEXT,"
|
|
||||||
"arcNumber INTEGER,"
|
|
||||||
"arcCount INTEGER,"
|
|
||||||
|
|
||||||
"genere TEXT,"
|
"writer TEXT,"
|
||||||
|
"penciller TEXT,"
|
||||||
|
"inker TEXT,"
|
||||||
|
"colorist TEXT,"
|
||||||
|
"letterer TEXT,"
|
||||||
|
"coverArtist TEXT,"
|
||||||
|
|
||||||
"writer TEXT,"
|
"date TEXT," //dd/mm/yyyy --> se mostrará en 3 campos diferentes
|
||||||
"penciller TEXT,"
|
"publisher TEXT,"
|
||||||
"inker TEXT,"
|
"format TEXT,"
|
||||||
"colorist TEXT,"
|
"color BOOLEAN,"
|
||||||
"letterer TEXT,"
|
"ageRating BOOLEAN,"
|
||||||
"coverArtist TEXT,"
|
|
||||||
|
|
||||||
"date TEXT," //dd/mm/yyyy --> se mostrará en 3 campos diferentes
|
"synopsis TEXT,"
|
||||||
"publisher TEXT,"
|
"characters TEXT,"
|
||||||
"format TEXT,"
|
"notes TEXT,"
|
||||||
"color BOOLEAN,"
|
|
||||||
"ageRating BOOLEAN,"
|
|
||||||
|
|
||||||
"synopsis TEXT,"
|
"hash TEXT UNIQUE NOT NULL,"
|
||||||
"characters TEXT,"
|
"edited BOOLEAN DEFAULT 0,"
|
||||||
"notes TEXT,"
|
"read BOOLEAN DEFAULT 0,"
|
||||||
|
//new 7.0 fields
|
||||||
|
|
||||||
"hash TEXT UNIQUE NOT NULL,"
|
"hasBeenOpened BOOLEAN DEFAULT 0,"
|
||||||
"edited BOOLEAN DEFAULT 0,"
|
"rating INTEGER DEFAULT 0,"
|
||||||
"read BOOLEAN DEFAULT 0,"
|
"currentPage INTEGER DEFAULT 1, "
|
||||||
//new 7.0 fields
|
"bookmark1 INTEGER DEFAULT -1, "
|
||||||
|
"bookmark2 INTEGER DEFAULT -1, "
|
||||||
|
"bookmark3 INTEGER DEFAULT -1, "
|
||||||
|
"brightness INTEGER DEFAULT -1, "
|
||||||
|
"contrast INTEGER DEFAULT -1, "
|
||||||
|
"gamma INTEGER DEFAULT -1, "
|
||||||
|
//new 7.1 fields
|
||||||
|
"comicVineID TEXT"
|
||||||
|
|
||||||
"hasBeenOpened BOOLEAN DEFAULT 0,"
|
")");
|
||||||
"rating INTEGER DEFAULT 0,"
|
success = success && queryComicInfo.exec();
|
||||||
"currentPage INTEGER DEFAULT 1, "
|
//queryComicInfo.finish();
|
||||||
"bookmark1 INTEGER DEFAULT -1, "
|
|
||||||
"bookmark2 INTEGER DEFAULT -1, "
|
|
||||||
"bookmark3 INTEGER DEFAULT -1, "
|
|
||||||
"brightness INTEGER DEFAULT -1, "
|
|
||||||
"contrast INTEGER DEFAULT -1, "
|
|
||||||
"gamma INTEGER DEFAULT -1, "
|
|
||||||
//new 7.1 fields
|
|
||||||
"comicVineID TEXT"
|
|
||||||
|
|
||||||
")");
|
//FOLDER (representa una carpeta en disco)
|
||||||
success = success && queryComicInfo.exec();
|
QSqlQuery queryFolder(database);
|
||||||
//queryComicInfo.finish();
|
queryFolder.prepare("CREATE TABLE folder ("
|
||||||
|
"id INTEGER PRIMARY KEY,"
|
||||||
|
"parentId INTEGER NOT NULL,"
|
||||||
|
"name TEXT NOT NULL,"
|
||||||
|
"path TEXT NOT NULL,"
|
||||||
|
//new 7.1 fields
|
||||||
|
"finished BOOLEAN DEFAULT 0," //reading
|
||||||
|
"completed BOOLEAN DEFAULT 1," //collecting
|
||||||
|
//--
|
||||||
|
"FOREIGN KEY(parentId) REFERENCES folder(id) ON DELETE CASCADE)");
|
||||||
|
success = success && queryFolder.exec();
|
||||||
|
|
||||||
//COMIC (representa un cómic en disco, contiene el nombre de fichero)
|
//COMIC (representa un cómic en disco, contiene el nombre de fichero)
|
||||||
QSqlQuery queryComic(database);
|
QSqlQuery queryComic(database);
|
||||||
queryComic.prepare("CREATE TABLE comic (id INTEGER PRIMARY KEY, parentId INTEGER NOT NULL, comicInfoId INTEGER NOT NULL, fileName TEXT NOT NULL, path TEXT, FOREIGN KEY(parentId) REFERENCES folder(id) ON DELETE CASCADE, FOREIGN KEY(comicInfoId) REFERENCES comic_info(id))");
|
queryComic.prepare("CREATE TABLE comic (id INTEGER PRIMARY KEY, parentId INTEGER NOT NULL, comicInfoId INTEGER NOT NULL, fileName TEXT NOT NULL, path TEXT, FOREIGN KEY(parentId) REFERENCES folder(id) ON DELETE CASCADE, FOREIGN KEY(comicInfoId) REFERENCES comic_info(id))");
|
||||||
success = success && queryComic.exec();
|
success = success && queryComic.exec();
|
||||||
//queryComic.finish();
|
//queryComic.finish();
|
||||||
//DB INFO
|
//DB INFO
|
||||||
QSqlQuery queryDBInfo(database);
|
QSqlQuery queryDBInfo(database);
|
||||||
queryDBInfo.prepare("CREATE TABLE db_info (version TEXT NOT NULL)");
|
queryDBInfo.prepare("CREATE TABLE db_info (version TEXT NOT NULL)");
|
||||||
success = success && queryDBInfo.exec();
|
success = success && queryDBInfo.exec();
|
||||||
//queryDBInfo.finish();
|
//queryDBInfo.finish();
|
||||||
|
|
||||||
QSqlQuery query("INSERT INTO db_info (version) "
|
QSqlQuery query("INSERT INTO db_info (version) "
|
||||||
"VALUES ('" VERSION "')",database);
|
"VALUES ('" VERSION "')",database);
|
||||||
//query.finish();
|
//query.finish();
|
||||||
|
|
||||||
//8.0> tables
|
|
||||||
success = success && DataBaseManagement::createV8Tables(database);
|
|
||||||
|
|
||||||
|
//8.0> tables
|
||||||
|
success = success && DataBaseManagement::createV8Tables(database);
|
||||||
}
|
}
|
||||||
|
|
||||||
return success;
|
return success;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user