crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

DarthBane
  опции профиля:
сообщение 8.8.2012, 11:56
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 8.8.2012
Пользователь №: 3474

Спасибо сказали: 0 раз(а)




Репутация:   0  


Стоит такая задача - журнал учета пользователей. Есть таблица в бд, с id записи, именем, датой и временем входа, которые заполняются пр иавторизации. Надо сделать следующее, при выходе из проги, в таблице заполнять поле даты выхода текущим временем, и заполнять соответственно последнюю строку. Я написал такой код, но у меня ничего не выходит((
QSqlQuery query_journ(db);
    QSqlQuery lastId(db);
    QTime exitTime = QTime::currentTime();
    QString strExitTime;
    strExitTime = exitTime.toString("hh:mm:ss");
    QDate work_date = QDate::currentDate();
    QString olo;
    olo = work_date.toString("dd-MM-yyyy");
    QString lastId_select ="SELECT last_insert_rowid() FROM work_journal";
    lastId.prepare(lastId_select);
    lastId.exec();
    QString aqw;
    aqw = lastId.lastInsertId().toString();
    QMessageBox zx;
    zx.setText(aqw);
    zx.exec();
    QString query_journ_select ="UPDATE work_journal SET exit_time='%1', where id='%2'";
    QString strQ = query_journ_select.arg(strExitTime).arg(aqw);
    if(!query_journ.exec(strQ)){
       qDebug()<<tr("Невозможно сделать вставку")<< query_journ.lastError();
    }


И в консоли такая ошибка:
QSqlQuery::value: not positioned on a valid record
"Невозможно сделать вставку" QSqlError(1, "Unable to execute statement", "near "where": syntax error")
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 7.6.2025, 0:03