Хранилища Subversion OpenInventory

Редакция

Редакция 37 | К новейшей редакции | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | 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")); }
95
if (defaultValue !="") {
96
    str_tmp.append(tr(" default '"));
97
    str_tmp.append(defaultValue);
98
    str_tmp.append(tr("'"));}
99
 
39 pingvin 100
if (TableField::autoIncrement) {
101
     str_tmp.append(tr(" "));
102
     str_tmp.append(tr("AUTO_INCREMENT"));
103
}
35 pingvin 104
TableField::SqlString = str_tmp;
105
}
106
 
107
 
108
QString TableField::sqlString(){
109
return TableField::SqlString;
110
}
111
 
112
 
113
void TableField::setDefaultValue(QString fdefaultValue){
114
 TableField::defaultValue = fdefaultValue;
115
 TableField::createSqlString();
116
}
117
 
39 pingvin 118
 
119
 
120
void TableField::setAutoIncrement(bool autoInc){
121
    TableField::autoIncrement = autoInc;
122
    TableField::createSqlString();
123
}
124
 
125
 
126
bool TableField::isAutoIncrement(){
127
    return TableField::autoIncrement;
128
}