Редакция 80 | Весь файл | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 80 | Редакция 81 | ||
---|---|---|---|
Строка 26... | Строка 26... | ||
26 | 26 | bool lResult = false; |
|
27 | 27 | QVariant old_value; // ñîõðàíèì ñòàðîå çíà÷åíèå |
|
28 | 28 | old_value = data(index); |
|
29 | 29 | ||
30 | 30 | ||
31 | - | ||
32 | - | ||
33 | - | ||
34 | - | ||
35 | - | ||
36 | - | ||
37 | - | ||
38 | - | ||
39 | - | ||
40 | - | ||
41 | - | ||
42 | - | ||
43 | - | ||
44 | - | ||
45 | - | ||
46 | - | ||
47 | - | ||
48 | - | ||
49 | - | ||
50 | - | ||
51 | - | ||
52 | 31 | if (index.column()==1){ // åñëè ïîìåíÿëîñü èìÿ ïîëÿ |
|
53 | 32 | QSqlQuery qu;
|
|
54 | 33 | QString old_field_name; // ñòàðîå èìÿ ïîëÿ |
|
55 | 34 | QString new_field_name; // íîâîå èìÿ ïîëÿ |
|
56 | 35 | QString query_str;
|
|
Строка 70... | Строка 49... | ||
70 | 49 | qu.prepare(query_str); |
|
71 | 50 | bool ok; |
|
72 | 51 | ok = qu.exec(); |
|
73 | 52 | if (!ok) return false; |
|
74 | 53 | }
|
|
75 | - | ||
76 | - | ||
77 | - | ||
78 | - | ||
79 | - | ||
80 | - | ||
81 | - | ||
82 | - | ||
83 | - | ||
84 | 54 | ||
85 | - | ||
86 | - | ||
87 | - | ||
88 | - | ||
89 | - | ||
90 | - | ||
91 | - | ||
92 | - | ||
93 | - | ||
94 | - | ||
95 | - | ||
96 | - | ||
97 | - | ||
98 | - | ||
99 | - | ||
100 | - | ||
101 | - | ||
102 | - | ||
103 | - | ||
104 | - | ||
105 | - | ||
106 | 55 | ||
107 | 56 | if (index.column()==3){ // åñëè ïîìåíÿëñÿ òèï äàííûõ |
|
108 | 57 | ///ALTER TABLE `an_db`.`1_Inctance` MODIFY COLUMN `int` INTEGER;
|
|
109 | 58 | ||
110 | 59 | bool ok; |
|
111 | - | ||
112 | 60 | ok = QSqlTableModel::setData(ModelForDescriptionTable::index(index.row(), 4), QVariant(tr("NULL")), Qt::EditRole); // ñáðîñèì çíà÷åíèå ïî óìîë÷àíèþ |
|
113 | 61 | if (ok) { |
|
114 | 62 | ||
115 | 63 | ||
116 | 64 | QSqlQuery qu;
|
|
Строка 129... | Строка 77... | ||
129 | 77 | ok = qu.exec(); |
|
130 | 78 | if (!ok) return false; |
|
131 | 79 | }
|
|
132 | 80 | else return false; |
|
133 | 81 | }
|
|
- | 82 | ||
134 | 83 | if (index.column()==4){ // åñëè ïîìåíÿëîñü çíà÷åíèå ïî óìîë÷àíèþ |
|
135 | 84 | ///ALTER TABLE `an_db`.`2_Inctance` MODIFY COLUMN `Îò÷åñòâî` CHAR(10) CHARACTER SET cp1251 COLLATE cp1251_general_ci DEFAULT 'Èâàíîâè÷';
|
|
136 | 85 | QSqlQuery qu;
|
|
137 | 86 | QString field_type, new_default_value, field_name, query_str;
|
|
138 | 87 | ||
139 | 88 | field_type = data(ModelForDescriptionTable::index(index.row(), 3)).toString(); // òèï ïîëÿ õðàíèòüñÿ â 3 ñòîëáöå, ñ÷èòûâàåì åãî çíà÷åíèå |
|
Строка 172... | Строка 121... | ||
172 | 121 | lResult = QSqlTableModel::setData(index, value, role); |
|
173 | 122 | if (lResult) { |
|
174 | 123 | lResult = updateRowInTable(index.row(), rec); |
|
175 | 124 | emit field_changed(); |
|
176 | 125 | /// QSqlTableModel::setData(newindex, QVariant(str_tmp), Qt::EditRole);
|
|
- | 126 | }
|
|
177 | 127 | ||
178 | 128 | ||
179 | - | ||
180 | 129 | ||
181 | 130 | ||
- | 131 | return lResult; |
|
- | 132 | }
|
|
182 | 133 | ||
183 | 134 | ||
- | 135 | ||
- | 136 | ||
- | 137 | bool ModelForDescriptionTable::onlySetData(const QModelIndex &index, const QVariant &value, int role){ |
|
- | 138 | bool lResult = false; |
|
- | 139 | ||
- | 140 | QSqlRecord rec = record(index.row()); |
|
- | 141 | rec.setValue(index.column(), value); |
|
- | 142 | rec.setGenerated(index.column(), true); |
|
- | 143 | ||
- | 144 | ||
- | 145 | lResult = QSqlTableModel::setData(index, value, role); |
|
- | 146 | if (lResult) { |
|
- | 147 | lResult = updateRowInTable(index.row(), rec); |
|
- | 148 | // emit field_changed();
|
|
- | 149 | /// QSqlTableModel::setData(newindex, QVariant(str_tmp), Qt::EditRole);
|
|
- | 150 | }
|
|
- | 151 | ||
- | 152 | ||
- | 153 | ||
- | 154 | ||
184 | 155 | return lResult; |
|
- | 156 | ||
185 | 157 | }
|
|
186 | 158 | ||
187 | 159 | ||
188 | 160 | ||
- | 161 | ||
- | 162 | ||
189 | 163 | QVariant ModelForDescriptionTable::data(const QModelIndex &index, int role) const { |
|
190 | 164 | ||
191 | 165 | QVariant value = QSqlTableModel::data(index, role); |
|
192 | 166 | switch (role) { |
|
193 | 167 | case Qt::DisplayRole: return value; |