Najpierw chcę poinformować o sprawie, aby uniknąć nieporozumień.Jak załadować rozszerzenie sqlite w PDO?
Przez rozszerzenie sqlite, wspominam rozszerzenie Sqlite jak FTS, a nie rozszerzenie sqlite PHP.
Używam PDO Sqlite w mojej aplikacji, nie można go zmienić.
jak widziałem here, SQLite Rozszerzenia mogą być ładowane jako kwerendy widać poniżej:
SELECT load_extension('xyz.so');
$db = new PDO ('sqlite:qwert.db');
$db->query("SELECT load_extension('myextension.so');");
$db->query("SELECT myfunction(name) FROM table");
$rows = $db->fetchAll(PDO::FETCH_CLASS, 'stdClass');
Uwaga: myfunction jest metoda myextension
Ale kiedy test z tego zapytania z PDO, to return "nie autoryzowany" wiadomość.
Tylko do testowania celów, próbowałem PHP's Sqlite3 extension załadować rozszerzenie za pomocą poniższego kodu:
$db = new SQLite3('qwer.db');
$db->loadExtension('xyz.so');
Działa
Ponieważ wiem, że PDO Sqlite hasnot metody takie jak loadExtension rozszerzeń załadowczych
Każdy pomysł, jak sobie z tym poradzić?
Należy dodać swój kod, jak połączyć się z bazą danych i sqlite, który pokazuje w jaki sposób ogień 'select load' zapytania. – hakre
Gdzie pojawia się błąd? Podczas ładowania rozszerzenia lub podczas wywoływania 'myfunction'? –
Podczas ładowania rozszerzenia – WebolizeR