Хранилища Subversion OpenInventory

Редакция

Редакция 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
}