17 if (myDb.isOpen()) { myDb.close(); }
28 QStringList theTables = myDb.tables();
29 if (theTables.contains(thisTable, Qt::CaseInsensitive)) {
return true; }
30 else {
return false; }
40void MySqlDbtModel::setSqlDatabase(QSqlDatabase thisDatabase)
49QSqlDatabase MySqlDbtModel::getSqlDatabase()
71 myTableName = thisTableName;
89 myHostName = thisHostName;
107 myUserName = thisUserName;
125 myDatabaseName = thisPassword;
134 return myDatabaseName;
143 myPassword = thisPassword;
161 myConnectionName = thisConnectionName;
177 myInsertID = thisRecordID;
186 return myConnectionName;
196 QString theDriver = thisDriver;
201 if (theDriver ==
":memory:")
204 mySqlDriver = theDriver;
206 else if (theDriver ==
"QSQLITE" || theDriver ==
"QSQLITE2")
209 mySqlDriver = theDriver;
211 else if (theDriver ==
"QMYSQL" || theDriver ==
"MARIADB")
214 mySqlDriver = theDriver;
216 else if (theDriver ==
"QPSQL")
219 mySqlDriver = theDriver;
221 else if (theDriver ==
"QDB2")
224 mySqlDriver = theDriver;
226 else if (theDriver ==
"QIBASE")
229 mySqlDriver = theDriver;
231 else if (theDriver ==
"QOCI")
234 mySqlDriver = theDriver;
236 else if (theDriver ==
"QTDS")
239 mySqlDriver = theDriver;
243 mySqlDriver = theDriver;
259 if (mySqlDriver ==
":memory:")
261 myDb = QSqlDatabase::addDatabase(
"QSQLITE");
262 myDb.setDatabaseName(
":memory:");
266 if (mySqlDriver ==
"QSQLITE" || mySqlDriver ==
"QSQLITE2")
269 if (theDb.contains(
".db"))
273 qCritical() <<
"createDataBaseConnection new DB: " << theDb;
281 myDb = QSqlDatabase::addDatabase(mySqlDriver);
282 myDb.setDatabaseName(theDb);
288 else if (mySqlDriver ==
"QDB2")
291 myDb = QSqlDatabase::addDatabase(mySqlDriver, myConnectionName);
297 else if (mySqlDriver ==
"QIBASE")
300 myDb = QSqlDatabase::addDatabase(mySqlDriver, myConnectionName);
306 else if (mySqlDriver ==
"QMYSQL" || mySqlDriver ==
"MARIADB")
309 myDb = QSqlDatabase::addDatabase(mySqlDriver, myConnectionName);
315 else if (mySqlDriver ==
"QOCI")
318 myDb = QSqlDatabase::addDatabase(mySqlDriver, myConnectionName);
324 else if (mySqlDriver ==
"QPSQL")
327 myDb = QSqlDatabase::addDatabase(mySqlDriver, myConnectionName);
333 else if (mySqlDriver ==
"QTDS")
336 myDb = QSqlDatabase::addDatabase(mySqlDriver, myConnectionName);
345 if(!QSqlDatabase::isDriverAvailable(mySqlDriver))
371 if (theQuery.exec(thisQuery))
378 qCritical() <<
"Error running Query: " << thisQuery << theQuery.lastError().text() <<
", SqLite error code:" << theQuery.lastError();
390bool MySqlDbtModel::moveDb(
const QString &thisSourceFile,
const QString &thisSourcePath,
const QString &thisDestinationFolder)
394 QFile file(QString(
"%1%2%3").arg(thisSourcePath, QDir::separator(), thisSourceFile));
396 QString theNewDatabaseName = QString(
"%1%2%3").arg(thisDestinationFolder, QDir::separator(), thisSourceFile);
406 if (myDb.isOpen()) { myDb.close(); }
407 if (file.rename(theNewDatabaseName))
409 myDatabaseName = theNewDatabaseName;
412 else {
return true; }
424 QProcess *thisProcess =
new QProcess(
this);
427 thisProcess->start(thisExePath, QStringList() << thisArgument);
429 if(!thisProcess->waitForStarted()) { qWarning() << tr(
"runProcces cannot start process"); }
431 int waitTime = thisWaitTimeSec * 1000;
433 if (!thisProcess->waitForFinished(waitTime)) { qWarning() << tr(
"runProcces timeout .."); }
437 thisProcess->start(thisExePath, QStringList() << thisArgument);
438 thisProcess->waitForFinished();
441 thisProcess->setProcessChannelMode(QProcess::MergedChannels);
442 myRunReturnCode = thisProcess->exitCode();
443 return QString(thisProcess->readAllStandardOutput().simplified());
451 return myRunReturnCode;
459 isDebugMessage = thisState;
467 return isDebugMessage;
477 qDebug() << thisMessage;
Constants are defined as const QString, starting with MY_ all capps.
const QString MY_SQL_DB_NAME
MY_SQL_DB_NAME
const QString MY_SQL_DEFAULT
SQL_DEFAULT
const QString MY_SQL_DB_TYPE
MY_SQL_DB_TYPE
Abstact Model used for ComboBox. /class MyLanguageModel.
MyOrgSettings * mySetting
mySetting
bool isFileExists(const QString &thisFile)
File Functions.
QString getAppDataLocation()
get AppData Location
bool questionYesNo(const char *thisTitle, const char *thisQuestion) const
question Yes No
QVariant showMessageBox(const QString &thisTitle, const QString &thisMessage, MyMessageTypes thisMessageType) const
show Message Box information, question, warning, critica
void writeSettings(const QString &thisSetting, const QString &thisValue)
write Settings
void setRecordID(const QString &thisRecordID)
set RecordID
QString getSqlTableName()
getSqlTableName
MyConstants * myConstants
myConstants
void setSqlTableName(const QString &thisTableName)
setSqlTableName
MySqlDbtModel(MyLanguageModel *thisLanguageModel=nullptr, MyConstants *thisConstant=nullptr, QObject *parent=0)
MySqlDbtModel.
MyLanguageModel * myLanguageModel
myLanguageModel
bool createDataBaseConnection()
create DataBase Connection
void setSqlUserName(const QString &thisUserName)
setSqlUserName
bool isDbTable(const QString &thisTable)
isDbTable
void setConnectionName(const QString &thisConnectionName)
set Connection Name
void setMessage(const QString &thisMessage)
setMessage
void setDebugMessage(bool thisState)
set Debug Message
QString getSqlDatabaseName()
getSqlDatabaseName
~MySqlDbtModel()
~MySqlDbtModel
void setSqlDatabaseName(const QString &thisPassword)
setSqlDatabaseName
bool runQuery(const QString &thisQuery)
runQuery
QString getRecordID()
get RecordID
QString runProcces(const QString &thisExePath, const QString &thisArgument, bool isWait, int thisWaitTimeSec)
run Procces
void setSqlHostName(const QString &thisHostName)
setSqlHostName
bool getDebugMessage()
get Debug Message
QString getSqlPassword()
getSqlPassword
QString getConnectionName()
get Connection Name
void setSqlDriver(const QString &thisDriver)
setSqlDriver
void setSqlPassword(const QString &thisPassword)
setSqlPassword
int getRunReturnCode()
get Run Return Code
QString getSqlHostName()
getSqlHostName
bool moveDb(const QString &thisSourceFile, const QString &thisSourcePath, const QString &thisDestinationFolder)
Move Db.
QString getSqlUserName()
getSqlUserName
QString getSqlDriver()
getSqlDriver