Russian Qt Forum

Qt => Базы данных => Тема начата: Павелъ от Май 11, 2017, 11:22



Название: QSQLITE: near "table" syntax error
Отправлено: Павелъ от Май 11, 2017, 11:22
Доброго времени.
Столкнулся со следующей проблемой. Есть код, написанный в старом QT. Там использовался драйвер QOCI. В новой версии QT его нет.
Методом проб и ошибок понял, что для Oracle из имеющихся драйверов подходит только QSQLITE.

Подключение нормальное, но запрос подобного вида возвращает ошибку, хотя через OracleDeveloper нормально проходит
Код:

select * from table(здесь одна из функций базы)


QSQLITE не нравится ключевое слово "table". Пытался нарыть информацию в гугле, но там везде пользователи пытаются создать таблицу с именем "table", поэтому у них и ошибка, но у меня другая проблема.

Как решить проблему?


Название: Re: QSQLITE: near "table" syntax error
Отправлено: __Heaven__ от Май 11, 2017, 11:38
Там использовался драйвер QOCI. В новой версии QT его нет.
Доки говорят, что есть
http://doc.qt.io/qt-5/sql-driver.html#qoci


Название: Re: QSQLITE: near "table" syntax error
Отправлено: Павелъ от Май 11, 2017, 12:24
Там использовался драйвер QOCI. В новой версии QT его нет.
Доки говорят, что есть
http://doc.qt.io/qt-5/sql-driver.html#qoci

А с QSQLITE что не так? Не подскажите?


Название: Re: QSQLITE: near "table" syntax error
Отправлено: kai666_73 от Май 11, 2017, 14:15
Там использовался драйвер QOCI. В новой версии QT его нет.
Доки говорят, что есть
http://doc.qt.io/qt-5/sql-driver.html#qoci

А с QSQLITE что не так? Не подскажите?
А то, что с Oracle QSQLITE ну никак работать не будет (да и не должен).


Название: Re: QSQLITE: near "table" syntax error
Отправлено: __Heaven__ от Май 11, 2017, 20:36
А с QSQLITE что не так? Не подскажите?
А с ним все в порядке, скорее всего.
Просто нельзя взять и нарезать помидоры аккуратненькими кубиками при помощи напильника.


Название: Re: QSQLITE: near "table" syntax error
Отправлено: Павелъ от Май 11, 2017, 21:39
А с QSQLITE что не так? Не подскажите?
А с ним все в порядке, скорее всего.
Просто нельзя взять и нарезать помидоры аккуратненькими кубиками при помощи напильника.

Не понял метафору.


Название: Re: QSQLITE: near "table" syntax error
Отправлено: __Heaven__ от Май 12, 2017, 10:03
Это странно применять драйвер от QSQLITE для работы с oracle, даже если он создаёт видимость правильной работы.
Примерно с таким же успехом можно использовать драйвера LAN для работы wi-fi устройства.


Название: Re: QSQLITE: near "table" syntax error
Отправлено: Павелъ от Май 14, 2017, 20:54
Удалось-таки по Ассистанту собрать QOCI. Но мне не нравится, что скомпилированный экзешник не хочет загружать QOCI на некоторых машинах. Чего я только не пробовал делать для этого и oci.dll кидал в папку с программой, и tsnames кидал туда же, и ещё какие-то dll - всё фигня. Как в итоге сделать, чтобы собранная программа нормально работала с этим драйвером на разных машинах?