Хранилища Subversion OpenInventory

Редакция

Редакция 35 | Редакция 39 | К новейшей редакции | Только различия | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS

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