Хранилища Subversion OpenInventory

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

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

/trunk/ClassEditor/mysql.cpp
86,3 → 86,61
}
 
 
 
/************************************************
** Ôóíêöèÿ ñîçäàåò íåîáõîäèìûå òàáëèöû â áàçå äàííûõ
** äëÿ õðàíåíèÿ íàçâàíèÿ è îïèñàíèÿ êëàññîâ
** (Òàáëèöà ListOfClasses è Òàáëèöà DescriptionOfClasses)
************************************************/
 
 
bool MySql::createDataBase(){
SqlTable* tbl;
TableField* fld;
if (!db.isOpen()){
MySql::mysqlLastError = tr("Database is not open!");
return false;
}
tbl = new SqlTable(tr("ListOfClasses")); // ñîçäàäèì òàáëèöó ñ èìåíåì ListOfClasses äëÿ õðàíåíèÿ ñïèñêà êëàññîâ
fld = new TableField(tr("ClassName"), tbl); // ýòî âòîðîå ïîëå òàáëèöû áóäåò õðàíèòü èìåíà êëàññîâ, ïåðâîå ïîëå ID óæå èìååòñÿ â íîâîé òàáëèöå (îíî ñîçäàåòñÿ ïî óìîë÷àíèþ)
fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("New class")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
fld = new TableField(tr("ClassAlias"), tbl); // ýòî òðåòüå ïîëå òàáëèöû áóäåò õðàíèòü ïñåâäîíèìû êëàññîâ
fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("New class alias")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
fld = new TableField(tr("TableWhithInstance"), tbl); // ýòî òðåòüå ïîëå òàáëèöû áóäåò õðàíèòü ïñåâäîíèìû êëàññîâ
fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("New class instance")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
fld = new TableField(tr("Comment"), tbl); // ýòî òðåòüå ïîëå òàáëèöû áóäåò õðàíèòü ïñåâäîíèìû êëàññîâ
fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì
fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ
fld->setDefaultValue(tr("without comments")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ
tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó
 
 
if(!MySql::createTable(tbl)){ // åñëè íå óäàåòñÿ ñîçäàòü òàáëèöó
 
// delete fld;
delete tbl; // ÷èñòèì çà ñîáîé
return false; // âûâîäèì îøèáêó
}
 
 
else { // òàáëèöó óñïåøíî ñîçäàíà
// delete fld;
delete tbl; // ÷èñòèì çà ñîáîé
return true; // ñîîáùàåì îá óñïåõå
 
}
 
 
}