Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Qt и кроссплатформенное программирование С/С++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.07.2009, 16:31   #1
HIC
Пользователь
 
Регистрация: 20.06.2007
Сообщений: 39
По умолчанию Qt. QSqlTableModel. Добавление новых строк.

Как правильно добавить новые строки в таблицу. Первичный ключ создан, поле автоинкрементное. Таблица отображается нормально, После добавления и редактирования новых строк на submitAll() ругается: No Fields to update. Вот код:
Код:
model = new QSqlTableModel(this);
    model->setTable("table1");
    model->setEditStrategy(QSqlTableModel::OnManualSubmit);
    model->select();

    table_view->setModel(model);

    mapper = new QDataWidgetMapper;
    mapper->setModel(model);
    mapper->addMapping(lineEdit1, 1);
    mapper->addMapping(lineEdit2, 2);

    connect(table_view->selectionModel(), SIGNAL(currentRowChanged(QModelIndex,QModelIndex)),
            mapper, SLOT(setCurrentModelIndex(QModelIndex)));

    table_view->setCurrentIndex(model->index(0, 0));

    connect(submit_action, SIGNAL(triggered()), this, SLOT(submit()));
    connect(add_action, SIGNAL(triggered()), this, SLOT(add()));
}

void main_window::submit()
{
    model->database().transaction();
    if (model->submitAll()) {
        model->database().commit();
    } else {
        model->database().rollback();
        QMessageBox::warning(this, trUtf8("Моя программа"),
                             trUtf8("Зе датабазе кирдык: %1")
                             .arg(model->lastError().text()));
    }
}

void main_window::add()
{
    model->insertRow(model->rowCount());
}
Юзаю Qt 4.5.0, Ubuntu 9.04, MySQL 5.0
HIC вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
GridView - добавление строк freez87 Общие вопросы .NET 5 06.06.2009 00:11
Матрица: добавление пустых строк Romer9999 Паскаль, Turbo Pascal, PascalABC.NET 4 09.12.2008 12:14
Как правильно перехватывать появление новых строк на листе? neugadal Microsoft Office Excel 2 03.10.2008 11:01
добавление строк StringGrid Alex_76 Помощь студентам 7 10.06.2008 15:17
Добавление строк в массив boks Microsoft Office Excel 2 28.09.2007 10:08