Хранилища Subversion OpenInventory

Редакция

Редакция 39 | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS

Редакция Автор № строки Строка
33 pingvin 1
#include "tablefield.h"
2
 
3
/*TableField::TableField()
4
{
5
}
6
*/
7
 
35 pingvin 8
/***********************************************************************************************
9
 **   TableField     -  
10
 **      :
11
 ** *parent = 0 ( "" )
12
 ** ftype = CHAR(30) (     -   30 )
13
 ** fdefaultValue = NULL (     "" )
14
 ***********************************************************************************************/
33 pingvin 15
 
35 pingvin 16
TableField::TableField(QString fname, QObject *parent, QString ftype, QString fdefaultValue):
37 pingvin 17
  QObject(parent)
33 pingvin 18
{
35 pingvin 19
    fieldName = fname;
20
    fieldType = ftype;
21
    defaultValue = fdefaultValue;
22
    notNull = false;                    //        ( NULL)
23
    characterSet = "";                  //    (  )
39 pingvin 24
    autoIncrement = false;               //    
35 pingvin 25
    createSqlString();                  //   Sql-,       
33 pingvin 26
}
27
 
28
 
29
 
35 pingvin 30
/*******************************************************************
31
**    name ( ),
33 pingvin 32
**
35 pingvin 33
*******************************************************************/
33 pingvin 34
 
35
 
36
 
37
void TableField::setName(QString name){
34 pingvin 38
    TableField::fieldName = name;
35 pingvin 39
    TableField::createSqlString();
33 pingvin 40
}
34 pingvin 41
 
42
 
43
QString TableField::name(){
44
    return TableField::fieldName;
45
}
46
 
47
QString TableField::type(){
48
    return TableField::fieldType;
49
}
50
 
51
void TableField::setType(QString ftype){
52
TableField::fieldType = ftype;
35 pingvin 53
TableField::createSqlString();
34 pingvin 54
}
55
 
35 pingvin 56
/*************************************************************************
57
**  isNotNull()  true,     "NOT NULL"
58
**  -  false
59
*************************************************************************/
60
 
61
bool TableField::isNotNull(){
62
return TableField::notNull;
63
}
64
 
65
/*******************************************************************
66
**     "NOT NULL"
67
**      
68
*******************************************************************/
69
 
70
 
71
void TableField::setNotNull(bool fnotNull){
72
    if ((fnotNull) && (defaultValue == "NULL")) defaultValue = ""; //     , ,     NULL,     
73
    TableField::notNull = fnotNull;
74
    TableField::createSqlString(); //   Sql-   
75
}
76
 
77
 
78
/********************************************************************************************
79
**    Sql-,       
80
**      SqlString
81
********************************************************************************************/
82
 
83
void TableField::createSqlString(){
84
QString str_tmp = "";
39 pingvin 85
str_tmp.append(tr("`"));
35 pingvin 86
str_tmp.append(fieldName);
39 pingvin 87
str_tmp.append(tr("` "));
35 pingvin 88
str_tmp.append(fieldType);
89
//str_tmp.append(tr(" "));
90
if (characterSet !="") {
91
str_tmp.append(tr(" character set"));
92
str_tmp.append(characterSet);
93
}
94
if (notNull) { str_tmp.append(tr(" NOT NULL")); }
40 pingvin 95
if ((defaultValue !="") && (defaultValue !="NULL")) {
35 pingvin 96
    str_tmp.append(tr(" default '"));
97
    str_tmp.append(defaultValue);
98
    str_tmp.append(tr("'"));}
40 pingvin 99
if ((defaultValue =="NULL")) {
100
    str_tmp.append(tr(" default "));
101
    str_tmp.append(defaultValue);}
35 pingvin 102
 
39 pingvin 103
if (TableField::autoIncrement) {
104
     str_tmp.append(tr(" "));
105
     str_tmp.append(tr("AUTO_INCREMENT"));
106
}
35 pingvin 107
TableField::SqlString = str_tmp;
108
}
109
 
110
 
111
QString TableField::sqlString(){
112
return TableField::SqlString;
113
}
114
 
115
 
116
void TableField::setDefaultValue(QString fdefaultValue){
117
 TableField::defaultValue = fdefaultValue;
118
 TableField::createSqlString();
119
}
120
 
39 pingvin 121
 
122
 
123
void TableField::setAutoIncrement(bool autoInc){
124
    TableField::autoIncrement = autoInc;
125
    TableField::createSqlString();
126
}
127
 
128
 
129
bool TableField::isAutoIncrement(){
130
    return TableField::autoIncrement;
131
}