Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Qt QSqlQuery Prepare (не могу найти ошибку)  (Прочитано 1354 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн nextdrift

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Добрый день. Делаю запрос на добавление записи в таблицу, но вылазит ошибка... Не могу понять в чём проблема...
Вот мой код:

        QSqlQuery q;
        q.prepare("INSERT INTO companies (name, director, phone, fax, type_own, area, count_staff, email, url, desc)"
                  "VALUES(:name, :director, :phone, :fax, :type_own, :area, :count_staff, :email, :url, :desc)");

        q.bindValue(":name",       ui->name->text());
        q.bindValue(":director",   ui->director->text());
        q.bindValue(":phone",      ui->phone->text());
        q.bindValue(":fax",        ui->fax->text());
        q.bindValue(":type_own",   ui->typeOwn->currentText());
        q.bindValue(":area",       ui->area->text());
        q.bindValue(":count_staff",ui->countStaff->text());
        q.bindValue(":email",      ui->email->text());
        q.bindValue(":url",        ui->url->text());
        q.bindValue(":desc",       ui->desc->toPlainText());

        if(q.exec())
        {

            msgBox.setText("запись успешно добавлена");
            msgBox.exec();
        }
        else
        {
            errText += q.lastError().text();
            msgBox.setText("ошибка при добавлении\n" + errText + "\n");
            msgBox.exec();

        }

получаю
Цитировать
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc)VALUES(:name, :director, :phone, :fax, :type_own, :area, :count_staff, :ema' at line 1 QMYSQL: Unable to execute query

Оффлайн SergeyIT

  • Зануда.
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5727
  • Все по палатам!
    • Просмотр профиля
Re: Qt QSqlQuery Prepare (не могу найти ошибку)
« Ответ #1 : 17 Мая 2013, 12:18:31 »
1.Слово desc (DESC) - зарезервировано в SQL.
2.Может просто пробела не хватает здесь - desc)_VALUES
Извините, я все еще учусь

Оффлайн nextdrift

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Re: Qt QSqlQuery Prepare (не могу найти ошибку)
« Ответ #2 : 17 Мая 2013, 15:46:51 »
1.Слово desc (DESC) - зарезервировано в SQL.

точно ))) Спасибо. Всё заработало

 

Страница сгенерирована за 0.051 секунд. Запросов: 26.