diff options
author | wr61 <wr61@e10066b5-e1e2-0310-b819-94efdf66514b> | 2005-09-26 07:42:06 +0000 |
---|---|---|
committer | wr61 <wr61@e10066b5-e1e2-0310-b819-94efdf66514b> | 2005-09-26 07:42:06 +0000 |
commit | 06be5a0ab95e04b660b0bdd980e5a15f4266b879 (patch) | |
tree | 2a6290641078f86c3dd7c928e33fb8b0d9365e2d | |
parent | bf428b92808a5729bd41ae3e2cab9221ee16b129 (diff) | |
download | vdr-plugin-muggle-release/0.1.8-wr.tar.gz vdr-plugin-muggle-release/0.1.8-wr.tar.bz2 |
rename SQL fields because of mysql 5.0 and add new GD fieldsrelease/0.1.8-wr
to mysql variant only and some mgDb restructuring for better
error handling
git-svn-id: https://vdr-muggle.svn.sourceforge.net/svnroot/vdr-muggle/branches/0.1.8-wr@826 e10066b5-e1e2-0310-b819-94efdf66514b
-rw-r--r-- | mg_db.c | 6 | ||||
-rw-r--r-- | mg_db.h | 1 | ||||
-rw-r--r-- | mg_db_gd_mysql.c | 21 | ||||
-rw-r--r-- | mg_db_gd_pg.c | 20 | ||||
-rw-r--r-- | mg_db_gd_sqlite.c | 21 |
5 files changed, 38 insertions, 31 deletions
@@ -314,6 +314,12 @@ mgDb::SyncStart() return true; } +bool +mgDb::DatabaseEmpty() +{ + return (exec_count("SELECT COUNT FROM TRACKS")>0); +} + void mgDb::Sync(char * const * path_argv) { @@ -192,6 +192,7 @@ class mgDb { virtual const char* DecadeExpr()=0; virtual string Now() const =0; virtual string Directory() const =0; + bool DatabaseEmpty(); protected: int m_rows; int m_cols; diff --git a/mg_db_gd_mysql.c b/mg_db_gd_mysql.c index 2393441..5385291 100644 --- a/mg_db_gd_mysql.c +++ b/mg_db_gd_mysql.c @@ -240,6 +240,7 @@ static char *db_cmds[] = "CREATE TABLE album ( " "artist varchar(255) default NULL, " "title varchar(255) default NULL, " + "composer varchar(255) default NULL, " "cddbid varchar(20) NOT NULL default '', " "coverimg varchar(255) default NULL, " "covertxt mediumtext, " @@ -358,6 +359,7 @@ static char *db_cmds[] = "CREATE TABLE tracks ( " "artist varchar(255) default NULL, " "title varchar(255) default NULL, " + "composer varchar(255) default NULL, " "genre1 varchar(10) default NULL, " "genre2 varchar(10) default NULL, " "year smallint(5) unsigned default NULL, " @@ -369,12 +371,13 @@ static char *db_cmds[] = "sourceid varchar(20) default NULL, " "tracknb tinyint(3) unsigned default NULL, " "mp3file varchar(255) default NULL, " - "conditions tinyint(3) unsigned default NULL, " + "quality tinyint(3) unsigned default NULL, " "voladjust smallint(6) default '0', " "lengthfrm mediumint(9) default '0', " "startfrm mediumint(9) default '0', " "bpm smallint(6) default '0', " "lyrics mediumtext, " + "moreinfo mediumtext, " "bitrate varchar(10) default NULL, " "created date default NULL, " "modified date default NULL, " @@ -527,17 +530,15 @@ mgDbGd::Connect () if (m_database_found) return true; extern bool create_question(); - extern bool import(); - if (create_question()) + if (!create_question()) { - if (Create()) - { - import(); - return true; - } + mgWarning("Database not created"); + return false; } - mgWarning(mysql_error(m_db)); - return false; + m_database_found = Create(); + if (!m_database_found) + mgWarning("Cannot create database:%s",mysql_error(m_db)); + return m_database_found; } bool diff --git a/mg_db_gd_pg.c b/mg_db_gd_pg.c index d315c6c..2c9a51b 100644 --- a/mg_db_gd_pg.c +++ b/mg_db_gd_pg.c @@ -193,7 +193,7 @@ static char *db_cmds[] = "sourceid varchar(20) default NULL, " "tracknb smallint default NULL, " "mp3file varchar(255) default NULL, " - "condition smallint default NULL, " + "quality smallint default NULL, " "voladjust smallint default '0', " "lengthfrm int default '0', " "startfrm int default '0', " @@ -304,19 +304,15 @@ mgDbGd::Connect () return false; m_create_time=time(0); extern bool create_question(); - extern bool import(); - if (create_question()) + if (!create_question()) { - m_database_found = true; - if (myCreate()) - { - import(); - return true; - } + mgWarning("Database not created"); + return false; } - m_database_found = false; - mgWarning(PQerrorMessage(m_db)); - return false; + m_database_found = myCreate(); + if (!m_database_found) + mgWarning("Cannot create database:%s",PQerrorMessage(m_db)); + return m_database_found; } bool diff --git a/mg_db_gd_sqlite.c b/mg_db_gd_sqlite.c index 8407b27..dac35a1 100644 --- a/mg_db_gd_sqlite.c +++ b/mg_db_gd_sqlite.c @@ -186,7 +186,7 @@ static char *db_cmds[] = "sourceid varchar(20) default NULL, " "tracknb tinyint(3) default NULL, " "mp3file varchar(255) default NULL, " - "condition tinyint(3) default NULL, " + "quality tinyint(3) default NULL, " "voladjust smallint(6) default '0', " "lengthfrm mediumint(9) default '0', " "startfrm mediumint(9) default '0', " @@ -331,16 +331,19 @@ mgDbGd::Connect () return false; } if (!FieldExists("tracks","id")) + m_database_found=false; + if (m_database_found) + return true; + extern bool create_question(); + if (!create_question()) { - extern bool create_question(); - if (!create_question()) - return false; - if (!Create()) - return false; - extern bool import(); - import(); + mgWarning("Database not created"); + return false; } - return true; + m_database_found = Create(); + if (!m_database_found) + mgWarning("Cannot create database:%s",sqlite3_errmsg); + return m_database_found; } bool |