Хранилища Subversion OpenInventory

Сравнить редакции

Не учитывать пробелы Редакция 209 → Редакция 210

/trunk/ClassEditor/mysql.h
43,6 → 43,7
bool createListOfClassesTable(); // ñîçäàåò íåîáõîäèìóþ òàáëèöó â áàçå äàííûõ äëÿ õðàíåíèÿ íàçâàíèÿ è êëàññîâ (Òàáëèöà ListOfClasses)
bool createDescriptionOfClassesTable(); // ñîçäàåò íåîáõîäèìóþ òàáëèöó â áàçå äàííûõ äëÿ õðàíåíèÿ îïèñàíèÿ êëàññîâ (Òàáëèöà DescriptionOfClasses)
bool createListModelsTable(); // ñîçäàåò íåîáõîäèìóþ òàáëèöó â áàçå äàííûõ äëÿ õðàíåíèÿ ìîäåëåé (Òàáëèöà ListOfModels)
bool createFiltersTable(); // ñîçäàåò íåîáõîäèìóþ òàáëèöó â áàçå äàííûõ äëÿ õðàíåíèÿ ôèëüòðîâ (Òàáëèöà Filters)
signals:
 
public slots:
/trunk/ClassEditor/classeditor.cpp
1132,6 → 1132,25
 
 
 
 
ok = sql.createFiltersTable();
 
if (!ok) {
QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
this, // Ðîäèòåëüñêèé âèäæåò.
QObject::tr("Database Error"), // Çàãîëîâîê.
sql.lasError()); // Òåêñò ñîîáùåíèÿ.
 
}
else {
 
QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
this, // Ðîäèòåëüñêèé âèäæåò.
QObject::tr("Database Create"), // Çàãîëîâîê.
QObject::tr("Áàçà äàííûõ óñïåøíî ñîçäàíà.")); // Òåêñò ñîîáùåíèÿ.
}
 
 
}
 
void ClassEditor::initClassListTable(){ // íàñòðàèâàåì òàáëèöó äëÿ îòîáðàæåíèÿ ñïèñêà ñóùåñòâóþùèõ êëàññîâ
/trunk/ClassEditor/ClassEditor.pro
9,7 → 9,7
svg \
xml \
xmlpatterns \
multimedia \
# multimedia \
qt3support
TARGET = ClassEditor
TEMPLATE = app
/trunk/ClassEditor/mysql.cpp
232,15 → 232,38
 
}
 
tbl = new SqlTable(tr("Filters")); // ñîçäàäèì òàáëèöó ñ èìåíåì DescriptionOfClassess äëÿ õðàíåíèÿ îïèñàíèÿ ïîëåé êëàññîâ
fld = new TableField(tr("Model_ID"), tbl); // ýòî âòîðîå ïîëå òàáëèöû áóäåò õðàíèòü èìåíà ïîëåé, ïåðâîå ïîëå ID óæå èìååòñÿ â íîâîé òàáëèöå (îíî ñîçäàåòñÿ ïî óìîë÷àíèþ)
fld->setNotNull(false); // ïîëå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("NULL")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
 
if(!MySql::createTable(tbl)){ // åñëè íå óäàåòñÿ ñîçäàòü òàáëèöó
 
// delete fld;
delete tbl; // ÷èñòèì çà ñîáîé
return false; // âûâîäèì îøèáêó
}
 
 
else { // òàáëèöó óñïåøíî ñîçäàíà
// delete fld;
delete tbl; // ÷èñòèì çà ñîáîé
return true; // ñîîáùàåì îá óñïåõå
 
}
 
 
 
 
 
}
 
 
 
 
bool MySql::createListOfClassesTable(){
 
SqlTable* tbl;
423,6 → 446,62
}
 
 
bool MySql::createFiltersTable(){ // ñîçäàåò íåîáõîäèìóþ òàáëèöó â áàçå äàííûõ äëÿ õðàíåíèÿ ôèëüòðîâ (Òàáëèöà Filters)
 
SqlTable* tbl;
TableField* fld;
if (!db.isOpen()){
MySql::mysqlLastError = tr("Database is not open!");
return false;
}
tbl = new SqlTable(tr("Filters")); // ñîçäàäèì òàáëèöó ñ èìåíåì Filters äëÿ õðàíåíèÿ ôèëüòðîâ
 
fld = new TableField(tr("Model_ID"), tbl); // ýòî âòîðîå ïîëå òàáëèöû áóäåò õðàíèòü ID ìîäåëè, ïåðâîå ïîëå ID óæå èìååòñÿ â íîâîé òàáëèöå (îíî ñîçäàåòñÿ ïî óìîë÷àíèþ)
fld->setNotNull(false); // ïîëå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("NULL")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
fld = new TableField(tr("Class_ID"), tbl); // ýòî òðåòüå ïîëå òàáëèöû áóäåò õðàíèòü ID êëàññà, ê êîòîðîìó áóäåò ïðèìåíÿòüñÿ ôèëüòð
fld->setNotNull(false); // ïîëå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("NULL")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
fld = new TableField(tr("Filter"), tbl); // ýòî ÷åòâåðòîå ïîëå òàáëèöû áóäåò õðàíèòü íåïîñðåäñòâåííî SQL-âûðàæåíèå
fld->setNotNull(false); // ïîëå ìîæåò áûòü ïóñòûì
fld->setType(tr("TEXT")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("NULL")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
 
fld = new TableField(tr("Ñondition"), tbl); // ýòî ïÿòîå ïîëå òàáëèöû áóäåò õðàíèòü ëîãè÷åñêèå óñëîâèå (AND, OR), c êîòîðûì âûðàæåíèå áóäåò äîáàâëÿòüñÿ â ôèëüòð
fld->setNotNull(false); // ïîëå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("NULL")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
 
if(!MySql::createTable(tbl)){ // åñëè íå óäàåòñÿ ñîçäàòü òàáëèöó
 
// delete fld;
delete tbl; // ÷èñòèì çà ñîáîé
return false; // âûâîäèì îøèáêó
}
 
 
else { // òàáëèöó óñïåøíî ñîçäàíà
// delete fld;
delete tbl; // ÷èñòèì çà ñîáîé
return true; // ñîîáùàåì îá óñïåõå
 
}
 
 
}
 
 
 
QSqlError MySql::dbLastError(){ // ôóíêöèÿ ôîçâðàùàåò ïîñëåäíþþ îøèáêó áàçû äàííûõ
QString error;
error = db.lastError().text();