Я полностью застрял с загрузкой расширений в Qt-SQLite-драйвере. Я сделал все шаги от this 'how to'. Просто изменил SQLITE_ENABLE_LOAD_EXTENSION на DSQLITE_ENABLE_LOAD_EXTENSION.
После этого я пытаюсь запустить следующий код в моем приложении:QSQLITE: авторизованный не может получить строку
QSqlQuery tSqlQuery;
QString sql_command_text;
sql_command_text = QString("SELECT load_extension(\"libspatialite-4.dll\")");
if(!tSqlQuery.exec(sql_command_text))
qDebug() << tSqlQuery.lastError().text();
И QDebug дает мне это: «не авторизован Невозможно получить строку».
Я использую Qt 4.6.3
Что я делаю неправильно? Я прочитал множество статей, но не нашел решения.
Вы можете быть уверены в следующих вещах:
- я сделал все шаги, от того, как к
- Я восстановить библиотеки DLL и заменил их
"Просто изменилось SQLITE_ENABLE_LOAD_EXTENSION в DSQLITE_ENABLE_LOAD_EXTENSION". Зачем? Вы правы? –
@FrankOsterfeld Это была моя ошибка. Но поскольку я изменил его на SQLITE_ENABLE_LOAD_EXTENSION, появилась новая ошибка: указанного модуля не удалось найти. Не удалось получить строку. Кстати, я поместил libspatialite.dll в исходную папку и отлаживаю папку также – tema
Оставшаяся проблема выглядит идентично тому, что обсуждалось здесь: http://stackoverflow.com/questions/8590599/sqlite-load-extension-fail- для-SpatiaLite-в-питон –