実際に拡張機能をロードしようとせずに、SQLite 3 で C インターフェイスから、または SQL を使用して拡張機能のロードが有効になっているかどうかをテストすることは可能ですか?
1850 次
1 に答える
6
このクエリを使用して、拡張機能の読み込みがデフォルトで有効になっているかどうかを確認できます。
SELECT sqlite_compileoption_used('ENABLE_LOAD_EXTENSION');
sqlite3_enable_load_extension
ただし、これは、決して呼び出されないことがわかっている場合にのみ機能します。
内部SQLITE_LoadExtension
フラグにはアクセスできません。SQLite が実際に拡張機能をロードしようとしたときにのみ読み取られます。
あなたができることは、などの既知の無効な拡張子をロードしようとすることですload_extension('/dev/null')
. 拡張機能の読み込みが無効になっている場合、エラー メッセージはnot authorized
のようなものではなく になりますfile too short
。
于 2012-10-05T21:25:48.490 に答える