2016-02-26 4 views
0

Я только что обновил одну из своих баз данных, включая создание новой таблицы AUTO_VERIFICATION. Эта таблица создается с помощью следующего запроса:SQLite query return "синтаксическая ошибка Не удалось выполнить оператор"

CREATE TABLE AUTO_VERIFICATION (stock text NOT NULL PRIMARY KEY, current_value double, last_high double, last_low double) 

Позже при попытке вставить первую запись, используя тот же самый вид кода, который я уже успешно используется для вставки данных в других таблицах, я получаю ошибку следующим образом (это использует собственное сообщение об ошибке моего приложения):

Error in call to MShareDatabase::execQuery: near \"0.00\": syntax error Unable to execute statement (query: INSERT INTO AUTO_VERIFICATION (stock, current_value, last_high, last_low) VALUES ('CYRE3', 0.00, 0.00, 0.00) 

Я просто не могу понять эту ошибку! Я уже проверил с другими частями кода, где я создаю другие таблицы и вставляю в них данные, и это тот же синтаксис. Я также использовал один из этих веб-сайтов, где вы можете проверить, хорошо ли синтаксис SQL, и он вернулся ко мне.

Не могли бы вы рассказать мне, в чем проблема?

Я использую SQLite с Qt 5.5 и только для записи все другие функции транзакций базы данных в моем коде (довольно много) работают нормально.

+0

Прекрасно работает здесь с SQLite 3.10.2 в командной строке. Я не уверен, что локаль может повлиять на вас, и точка не интерпретируется как десятичный разделитель? – Olli

+0

@ Олли хорошо, это то, чего я ожидаю от всех. XD Серьезно, эта ошибка сумасшедшая! В любом случае, я не думаю, что это так: как я уже сказал, запрос имеет одинаковый синтаксис для каждого другого запроса, а остальные работают нормально. Тем не менее я постараюсь проверить, могу ли я что-то пропустить. Благодаря! – Momergil

+0

Очень сумасшедшая ошибка! Как создать запрос? Вы пробовали с привязкой ценностей? (QSqlQuery :: bindValue) – Fabio

ответ

0

Я получил: закрывающая скобка «)» отсутствует в конце запроса (тот, который отображается, фактически является частью сообщения об ошибке, а не самим запросом).

Спасибо за всю помощь,

Momergil

Смежные вопросы