Не удается программно изменять значения модели БД, submitAll возвращает false после вызова setRecord |
Здравствуйте, гость ( Вход | Регистрация )
Не удается программно изменять значения модели БД, submitAll возвращает false после вызова setRecord |
Rocky |
17.2.2009, 10:43
Сообщение
#1
|
Старейший участник Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7 |
Всем привет! Помогите пожалуйста с проблемкой... Создаю таблицу БД SQLite 3 таким образом:
Таблица создана. Затем нужно сделать ее редактирование, и при этом вставлять записи в нужное место (не обязательно в конец). Вставку делаю так:
После этого m_pModel->submitAll() возвращает false, т.е. ничего не сохраняется... Если цикл по строкам убрать, и оставить только саму вставку строки, то submitAll возвращает true (только вставленная строка перемещается в другое место). Пробовал через setRecord менять другие столбцы (не id), результат тот же. Пробовал менять данные через индексы и setData, результат тот же... m_pDataTableView - это QTableView. Модель устанавливается в конструкторе класса через setModel(pModel); Сама модель:
В чем могут быть грабли? Никто не пробовал менять данные таким образом? Как можно обойти это? QT 4.3.4. Заранее большое спасибо! -----Добавлено------ Блин, удалите пожалуйста эту тему, инет сглючил, 2 темы создал случайно Сообщение отредактировал Rocky - 17.2.2009, 10:46 |
|
|
Rocky |
17.2.2009, 23:02
Сообщение
#2
|
Старейший участник Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7 |
Хм... Если речь идет о таблице с этими трубами, то нет... Но есть таблицы, например с материалами разными.... Там есть группа, есть подгруппа, а есть сами материалы с разными физическими свойствами. Может быть по-хорошему имеет смысл делать отдельно таблицу групп, таблицы подгрупп, таблицы свойств и связывать их через ключи и соотношения 1:N и пр (помню только примерно, базовый курс в универе тока был давно). Но я делаю так (строки таблицы):
И пользователю может понадобиться добавить новое свойство для подгруппы 2 например. Если не делать сорировку, то это добавленное свойство перенесется в самый конец, и будет относится не к подгруппе2, а к подгуппе10, например, что будет полной чушью. ---Добавлено позже--- trdm спасибо, сейчас посмотрим. Сообщение отредактировал Rocky - 17.2.2009, 23:13 |
|
|
trdm |
18.2.2009, 1:06
Сообщение
#3
|
Дмитрий Трошин Группа: Участник Сообщений: 575 Регистрация: 12.1.2008 Пользователь №: 68 Спасибо сказали: 21 раз(а) Репутация: 6 |
trdm, сейчас посмотрим. ага, судя по тому, что ты написал тебе надо хорошо поработать с сущностями этих групп, подгрупп. я таки и не понял, свойства группы являются так-же и свойствами подгрупп, у которых эта группа - владелец. Или нет. это вопрос надо выяснить очень внимательно. |
|
|
Текстовая версия | Сейчас: 26.11.2024, 14:46 |