Здравствуйте, гость ( Вход | Регистрация )
Majestio | Дата 19.4.2013, 20:43 |
К сожалению, ничего не происходит.все тоже самое. А Если попытаться сразу добавить много строк,то если заполнить одну сроку и потом добавить еще,то предыдущая строка сразу становиться пустой и так далее. Я бы предложил следующее: 1) Вынести model в класс, проинициализировать ее в конструкторе один раз через new (и не делать всяких там this->model = model) 2) Немного изменить порядок манипуляций с моделью // в конструкроре ................................................................................ .......... model->setTable("trade"); // потом model->select(); // потом model->setHeaderData(0, Qt::Horizontal, QObject::tr("Номер точки")); model->setHeaderData(1, Qt::Horizontal, QObject::tr("Тип торговой точки")); model->setHeaderData(2, Qt::Horizontal, QObject::tr("Число торговых залов")); model->setHeaderData(3, Qt::Horizontal, QObject::tr("Платежи за аренду, руб.")); model->setHeaderData(4, Qt::Horizontal, QObject::tr("Коммунальные услуги, руб.")); // потом ui->tw->setModel(model); ui->tw->show(); // в конструкторе model->submitAll() не нужен, ибо только чтение про добавление .... если БД позволяет вставлять данные (NULL,NULL,....,NULL) - добавление должно пройти после сабмита модели, если хотябы одно поле NOT NULL - нужно добавить в модель реальные заполненные данные, иначе БД просто этот сабмин не скушает Вот как-то так. |
|
gbcesc | Дата 13.4.2013, 19:53 |
К сожалению, ничего не происходит.все тоже самое. А Если попытаться сразу добавить много строк,то если заполнить одну сроку и потом добавить еще,то предыдущая строка сразу становиться пустой и так далее. | |
maint | Дата 13.4.2013, 19:23 |
Maint, Вы имеете ввиду создать кнопку выхода и вставить Ваш код туда? не могли бы Вы написать прямо в коде куда надо это вставлять? Если нужны исходники да хоть в деструкторе, хоть сразу за insertRow. Для проверки сойдет и insertRow |
|
gbcesc | Дата 13.4.2013, 18:59 |
Maint, Вы имеете ввиду создать кнопку выхода и вставить Ваш код туда? не могли бы Вы написать прямо в коде куда надо это вставлять? Если нужны исходники | |
maint | Дата 13.4.2013, 18:41 |
вставьте штук 10. Увидите что что то сохранилось. Постигнув эту истину найдете понятие транзакция и при выходе из программы будете делать что то вроде
|
|
gbcesc | Дата 13.4.2013, 14:08 |
Всем добрый день. Столкнулся с одной проблемой и не могу понять,что не так. Есть программа для работы с Базой Данных Postgres, подключение - все проходит успешно, таблица выводится. Удалить последнюю строку получается и это изменение сохраняется в саму БД, а вот добавить новую строку,чтобы она сохранилась никак не выходит. Помогите пожалуйста и скажите,что в коде не так? В Qt я новичок. Код:
|
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 27.4.2024, 16:27 |