00001 #ifndef DBUTIL_H_
00002 #define DBUTIL_H_
00003
00004 #include <qstringlist.h>
00005
00006 #include "mythexp.h"
00007
00020 class MPUBLIC DBUtil
00021 {
00022 public:
00023 DBUtil();
00024 ~DBUtil() { }
00025
00026 QString GetDBMSVersion(void);
00027 int CompareDBMSVersion(int major, int minor=0, int point=0);
00028
00029 bool BackupDB(QString &filename);
00030
00031 static bool IsBackupInProgress(void);
00032
00033 static const int kUnknownVersionNumber;
00034
00035 private:
00036 bool QueryDBMSVersion(void);
00037 bool ParseDBMSVersion(void);
00038
00039 QStringList GetTables(void);
00040
00041 QString CreateBackupFilename(QString prefix = "mythconverg",
00042 QString extension = ".sql");
00043 QString GetBackupDirectory();
00044
00045 bool DoBackup(QString &filename);
00046
00047 QString m_versionString;
00048
00049 int m_versionMajor;
00050 int m_versionMinor;
00051 int m_versionPoint;
00052
00053 };
00054
00055 #endif