4

実際に拡張機能をロードしようとせずに、SQLite 3 で C インターフェイスから、または SQL を使用して拡張機能のロードが有効になっているかどうかをテストすることは可能ですか?

4

1 に答える 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 に答える