#include <sqldump.h>
Public Slots | |
| void | startBackup () |
| void | setDb (QString newDbName) |
Signals | |
| void | closeWindow () |
Public Member Functions | |
| SQLDump (QWidget *parent=0) | |
| ~SQLDump () | |
Public Attributes | |
| QSqlDatabase | db |
| QString | dbName |
| QStringList | dbList |
Definition at line 12 of file sqldump.h.
| SQLDump::SQLDump | ( | QWidget * | parent = 0 ) |
[explicit] |
Definition at line 5 of file sqldump.cpp.
:
QWidget(parent),
ui(new Ui::SQLDump)
{
ui->setupUi(this);
comboChanged = false;
ico_folder = QIcon(QApplication::style()->standardIcon(QApplication::style()->SP_DirIcon));
ico_db = QIcon("://icons/Icon_45.ico");
ico_table = QIcon("://icons/Icon_44.ico");
ico_view = QIcon("://icons/Icon_96.ico");
ico_proc = QIcon("://icons/Icon_100.ico");
}
| SQLDump::~SQLDump | ( | ) |
Definition at line 18 of file sqldump.cpp.
{
delete ui;
}
| void SQLDump::closeWindow | ( | ) | [signal] |
| void SQLDump::setDb | ( | QString | newDbName ) | [slot] |
Definition at line 23 of file sqldump.cpp.
Referenced by startBackup().
{
dbName = newDbName;
this->setWindowTitle(tr("SQL Dump (Dumping objects in %1)").arg(dbName));
ui->trvObjects->clear();
QTreeWidgetItem *folder;
QTreeWidgetItem *child;
QSqlQuery query = QSqlQuery(db);
//show table list
folder = new QTreeWidgetItem(ui->trvObjects);
folder->setText(0, "Tables");
folder->setText(1, "folTables");
folder->setIcon(0, ico_folder);
folder->setCheckState(0, Qt::Checked);
query.exec(tr("show full tables in `%1` WHERE TABLE_TYPE = 'BASE TABLE'").arg(dbName));
while (query.next()) {
child = new QTreeWidgetItem(folder);
child->setText(0, query.value(0).toString());
child->setText(1, "chilTable");
child->setIcon(0, ico_table);
child->setCheckState(0, Qt::Checked);
}
//show view list
folder = new QTreeWidgetItem(ui->trvObjects);
folder->setText(0, "Views");
folder->setText(1, "folViews");
folder->setIcon(0, ico_folder);
folder->setCheckState(0, Qt::Checked);
query.exec(tr("show full tables in `%1` WHERE TABLE_TYPE = 'VIEW'").arg(dbName));
while (query.next()) {
child = new QTreeWidgetItem(folder);
child->setText(0, query.value(0).toString());
child->setText(1, "chilView");
child->setIcon(0, ico_view);
child->setCheckState(0, Qt::Checked);
}
//show stored procedure list
folder = new QTreeWidgetItem(ui->trvObjects);
folder->setText(0, "Stored Procedures");
folder->setText(1, "folProcedures");
folder->setIcon(0, ico_folder);
folder->setCheckState(0, Qt::Checked);
query.exec(tr("SELECT `SPECIFIC_NAME` FROM `INFORMATION_SCHEMA`.`ROUTINES` WHERE `ROUTINE_SCHEMA` = '%1' AND `ROUTINE_TYPE` = 'PROCEDURE'").arg(dbName));
while (query.next()) {
child = new QTreeWidgetItem(folder);
child->setText(0, query.value(0).toString());
child->setText(1, "chilProc");
child->setIcon(0, ico_proc);
child->setCheckState(0, Qt::Checked);
}
//show function list
folder = new QTreeWidgetItem(ui->trvObjects);
folder->setText(0, "Functions");
folder->setText(1, "folFunctions");
folder->setIcon(0, ico_folder);
folder->setCheckState(0, Qt::Checked);
query.exec(tr("SELECT `SPECIFIC_NAME` FROM `INFORMATION_SCHEMA`.`ROUTINES` WHERE `ROUTINE_SCHEMA` = '%1' AND `ROUTINE_TYPE` = 'FUNCTION'").arg(dbName));
while (query.next()) {
child = new QTreeWidgetItem(folder);
child->setText(0, query.value(0).toString());
child->setText(1, "chilFunction");
child->setIcon(0, ico_proc);
child->setCheckState(0, Qt::Checked);
}
//show trigger list
folder = new QTreeWidgetItem(ui->trvObjects);
folder->setText(0, "Triggers");
folder->setText(1, "folTriggers");
folder->setIcon(0, ico_folder);
folder->setCheckState(0, Qt::Checked);
query.exec(tr("SELECT `TRIGGER_NAME` FROM `INFORMATION_SCHEMA`.`TRIGGERS` WHERE `ROUTINE_SCHEMA` = '%1'").arg(dbName));
while (query.next()) {
child = new QTreeWidgetItem(folder);
child->setText(0, query.value(0).toString());
child->setText(1, "chilTrigger");
child->setIcon(0, ico_view);
child->setCheckState(0, Qt::Checked);
}
}
| void SQLDump::startBackup | ( | ) | [slot] |
Definition at line 102 of file sqldump.cpp.
References dbList, dbName, and setDb().
{
ui->cboDbList->clear();
QString originalDbName = dbName;
for (int i = 0; i < dbList.length(); i++) {
ui->cboDbList->insertItem(i, ico_db ,dbList.at(i));
}
for (int i = 0; i < dbList.length(); i++) {
if (dbList.at(i) == originalDbName) {
ui->cboDbList->setCurrentIndex(i);
setDb(originalDbName);
}
}
}
| QSqlDatabase SQLDump::db |
| QStringList SQLDump::dbList |
Definition at line 21 of file sqldump.h.
Referenced by startBackup().
| QString SQLDump::dbName |
Definition at line 20 of file sqldump.h.
Referenced by setDb(), and startBackup().
1.7.2