Редакция 44 | Редакция 56 | К новейшей редакции | Весь файл | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 44 | Редакция 45 | ||
---|---|---|---|
Строка 84... | Строка 84... | ||
84 | 84 | ||
85 | return MySql::mysqlLastError; |
85 | return MySql::mysqlLastError; |
86 | }
|
86 | }
|
87 | 87 | ||
88 | 88 | ||
- | 89 | ||
- | 90 | /************************************************
|
|
- | 91 | ** Ôóíêöèÿ ñîçäàåò íåîáõîäèìûå òàáëèöû â áàçå äàííûõ
|
|
- | 92 | ** äëÿ õðàíåíèÿ íàçâàíèÿ è îïèñàíèÿ êëàññîâ
|
|
- | 93 | ** (Òàáëèöà ListOfClasses è Òàáëèöà DescriptionOfClasses)
|
|
- | 94 | ************************************************/
|
|
- | 95 | ||
- | 96 | ||
- | 97 | bool MySql::createDataBase(){ |
|
- | 98 | SqlTable* tbl; |
|
- | 99 | TableField* fld; |
|
- | 100 | if (!db.isOpen()){ |
|
- | 101 | MySql::mysqlLastError = tr("Database is not open!"); |
|
- | 102 | return false; |
|
- | 103 | }
|
|
- | 104 | tbl = new SqlTable(tr("ListOfClasses")); // ñîçäàäèì òàáëèöó ñ èìåíåì ListOfClasses äëÿ õðàíåíèÿ ñïèñêà êëàññîâ |
|
- | 105 | fld = new TableField(tr("ClassName"), tbl); // ýòî âòîðîå ïîëå òàáëèöû áóäåò õðàíèòü èìåíà êëàññîâ, ïåðâîå ïîëå ID óæå èìååòñÿ â íîâîé òàáëèöå (îíî ñîçäàåòñÿ ïî óìîë÷àíèþ) |
|
- | 106 | fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì |
|
- | 107 | fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ |
|
- | 108 | fld->setDefaultValue(tr("New class")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ |
|
- | 109 | tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó |
|
- | 110 | ||
- | 111 | fld = new TableField(tr("ClassAlias"), tbl); // ýòî òðåòüå ïîëå òàáëèöû áóäåò õðàíèòü ïñåâäîíèìû êëàññîâ |
|
- | 112 | fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì |
|
- | 113 | fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ |
|
- | 114 | fld->setDefaultValue(tr("New class alias")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ |
|
- | 115 | tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó |
|
- | 116 | ||
- | 117 | fld = new TableField(tr("TableWhithInstance"), tbl); // ýòî òðåòüå ïîëå òàáëèöû áóäåò õðàíèòü ïñåâäîíèìû êëàññîâ |
|
- | 118 | fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì |
|
- | 119 | fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ |
|
- | 120 | fld->setDefaultValue(tr("New class instance")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ |
|
- | 121 | tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó |
|
- | 122 | ||
- | 123 | fld = new TableField(tr("Comment"), tbl); // ýòî òðåòüå ïîëå òàáëèöû áóäåò õðàíèòü ïñåâäîíèìû êëàññîâ |
|
- | 124 | fld->setNotNull(true); // ïîëå íå ìîæåò áûòü ïóñòûì |
|
- | 125 | fld->setType(tr("CHAR(30)")); // òèï ïîëÿ - ñòðîêà èç 30 ñèìâîëîâ |
|
- | 126 | fld->setDefaultValue(tr("without comments")); // çíà÷åíèå ïîëÿ ïî óìîë÷àíèþ |
|
- | 127 | tbl->append(fld); // äîáàâëÿåì ïîëå â òàáëèöó |
|
- | 128 | ||
- | 129 | ||
- | 130 | if(!MySql::createTable(tbl)){ // åñëè íå óäàåòñÿ ñîçäàòü òàáëèöó |
|
- | 131 | ||
- | 132 | // delete fld;
|
|
- | 133 | delete tbl; // ÷èñòèì çà ñîáîé |
|
- | 134 | return false; // âûâîäèì îøèáêó |
|
- | 135 | }
|
|
- | 136 | ||
- | 137 | ||
- | 138 | else { // òàáëèöó óñïåøíî ñîçäàíà |
|
- | 139 | // delete fld;
|
|
- | 140 | delete tbl; // ÷èñòèì çà ñîáîé |
|
- | 141 | return true; // ñîîáùàåì îá óñïåõå |
|
- | 142 | ||
- | 143 | }
|
|
- | 144 | ||
- | 145 | ||
- | 146 | }
|