Редакция 34 | Редакция 37 | К новейшей редакции | Весь файл | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 34 | Редакция 35 | ||
---|---|---|---|
Строка 3... | Строка 3... | ||
3 | /*TableField::TableField()
|
3 | /*TableField::TableField()
|
4 | {
|
4 | {
|
5 | }
|
5 | }
|
6 | */
|
6 | */
|
7 | 7 | ||
- | 8 | /***********************************************************************************************
|
|
- | 9 | ** Êîíñòðóêòîð êëàññà TableField èìååò îäèí îáÿçàòåëüíûé ïàðàìåòð - èìÿ ïîëÿ
|
|
- | 10 | ** îñòàëüíûå ïàðàìåòðû èìåþò çíà÷åíèÿ ïî óìîë÷àíèþ:
|
|
- | 11 | ** *parent = 0 (íåò "ðîäèòåëüñêîãî" îáúåêòà)
|
|
- | 12 | ** ftype = CHAR(30) (òèï õðàíèìûõ â ïîëå äàííûõ - ñòðîêà èç 30 ñèìâîëîâ)
|
|
- | 13 | ** fdefaultValue = NULL (äàííûå â ïîëå ìîãóò èìåòü "ïóñòîå" çíà÷åíèå)
|
|
- | 14 | ***********************************************************************************************/
|
|
8 | 15 | ||
9 | TableField::TableField(QObject *parent) : |
16 | TableField::TableField(QString fname, QObject *parent, QString ftype, QString fdefaultValue): |
10 | QObject(parent) |
17 | QObject(parent) |
11 | {
|
18 | {
|
12 | fieldName = tr("New_field"); |
19 | fieldName = fname; |
13 | fieldType = tr("CHAR(30)"); |
20 | fieldType = ftype; |
14 | defaultValue = tr("NULL"); |
21 | defaultValue = fdefaultValue; |
- | 22 | notNull = false; // ïî óìîë÷àíèþ äàííûå â ïîëå ìîãóò îòñóòñòâîâàòü (áûòü NULL) |
|
- | 23 | characterSet = ""; // êîäèðîâêà ïî óìîë÷àíèþ (íå óêàçûâàòü êîäèðîâêó) |
|
- | 24 | createSqlString(); // ñôîðìèðóåì ñòðîêó Sql-çàïðîñà, êîòîðàÿ ñîçäàåò â áàçå äàííûõ ñîîòâåòñòâóþùåå ïîëå |
|
15 | }
|
25 | }
|
16 | 26 | ||
17 | 27 | ||
18 | 28 | ||
19 | /************************************************
|
29 | /*******************************************************************
|
20 | ** Функция присвоения значения имени базы данных
|
30 | ** Ôóíêöèÿ óñòàíàâëèâàò ïåðåííóþ name (èìÿ ïîëÿ),
|
21 | **
|
31 | **
|
22 | ************************************************/
|
32 | *******************************************************************/
|
23 | 33 | ||
24 | 34 | ||
25 | 35 | ||
26 | void TableField::setName(QString name){ |
36 | void TableField::setName(QString name){ |
27 | TableField::fieldName = name; |
37 | TableField::fieldName = name; |
- | 38 | TableField::createSqlString(); |
|
28 | }
|
39 | }
|
29 | 40 | ||
30 | 41 | ||
31 | QString TableField::name(){ |
42 | QString TableField::name(){ |
32 | return TableField::fieldName; |
43 | return TableField::fieldName; |
Строка 36... | Строка 47... | ||
36 | return TableField::fieldType; |
47 | return TableField::fieldType; |
37 | }
|
48 | }
|
38 | 49 | ||
39 | void TableField::setType(QString ftype){ |
50 | void TableField::setType(QString ftype){ |
40 | TableField::fieldType = ftype; |
51 | TableField::fieldType = ftype; |
- | 52 | TableField::createSqlString(); |
|
- | 53 | }
|
|
- | 54 | ||
- | 55 | /*************************************************************************
|
|
- | 56 | ** Ôóíêöèÿ isNotNull() âîçâðàùàåò true, åñëè ïîëå èìååò àòðèáóò "NOT NULL"
|
|
- | 57 | ** Èíà÷å - âîçâðàùàåò false
|
|
- | 58 | *************************************************************************/
|
|
- | 59 | ||
- | 60 | bool TableField::isNotNull(){ |
|
- | 61 | return TableField::notNull; |
|
- | 62 | }
|
|
- | 63 | ||
- | 64 | /*******************************************************************
|
|
- | 65 | ** Ôóíêöèÿ óñòàíàâëèâàåò àòðèáóò ïîëÿ "NOT NULL"
|
|
- | 66 | ** Çíà÷åíèå ïåðåäàåòñÿ ÷åðåç ïàðàìåòð ôóíêöèè
|
|
- | 67 | *******************************************************************/
|
|
- | 68 | ||
- | 69 | ||
- | 70 | void TableField::setNotNull(bool fnotNull){ |
|
- | 71 | if ((fnotNull) && (defaultValue == "NULL")) defaultValue = ""; // ïîëå íå ìîæåò áûòü ïóñòûì, ïîýòîìó, åñëè çíà÷åíèå ïî óìîë÷àíèþ NULL, ïîìåíÿåì åãî íà ïóñòóþ ñòðîêó |
|
- | 72 | TableField::notNull = fnotNull; |
|
- | 73 | TableField::createSqlString(); // Ãåíåðèðóåò ñòðîêó Sql-çàïðîñà ñ íîâûìè ïàðàìåòðàìè |
|
- | 74 | }
|
|
- | 75 | ||
- | 76 | ||
- | 77 | /********************************************************************************************
|
|
- | 78 | ** Ôóíêöèÿ ãåíåðèðóåò ñòðîêó Sql-çàïðîñà, êîòîðàÿ ñîçäàåò â áàçå äàííûõ ñîîòâåòñòâóþùåå ïîëå
|
|
- | 79 | ** è ïðèñâàèâàåò ïîëó÷åííîå çíà÷åíèå ïåðåìåííîé SqlString
|
|
- | 80 | ********************************************************************************************/
|
|
- | 81 | ||
- | 82 | void TableField::createSqlString(){ |
|
- | 83 | QString str_tmp = ""; |
|
- | 84 | str_tmp.append(tr("'")); |
|
- | 85 | str_tmp.append(fieldName); |
|
- | 86 | str_tmp.append(tr("' ")); |
|
- | 87 | str_tmp.append(fieldType); |
|
- | 88 | //str_tmp.append(tr(" "));
|
|
- | 89 | if (characterSet !="") { |
|
- | 90 | str_tmp.append(tr(" character set")); |
|
- | 91 | str_tmp.append(characterSet); |
|
- | 92 | }
|
|
- | 93 | if (notNull) { str_tmp.append(tr(" NOT NULL")); } |
|
- | 94 | if (defaultValue !="") { |
|
- | 95 | str_tmp.append(tr(" default '")); |
|
- | 96 | str_tmp.append(defaultValue); |
|
- | 97 | str_tmp.append(tr("'"));} |
|
- | 98 | ||
- | 99 | TableField::SqlString = str_tmp; |
|
- | 100 | }
|
|
- | 101 | ||
- | 102 | ||
- | 103 | QString TableField::sqlString(){ |
|
- | 104 | return TableField::SqlString; |
|
- | 105 | }
|
|
- | 106 | ||
- | 107 | ||
- | 108 | void TableField::setDefaultValue(QString fdefaultValue){ |
|
- | 109 | TableField::defaultValue = fdefaultValue; |
|
- | 110 | TableField::createSqlString(); |
|
41 | }
|
111 | }
|
42 | 112 |