是否可以从C接口测试SQLite 3中的extension loading is enabled或使用SQL而不实际尝试加载扩展?
答案 0 :(得分:5)
您可以使用此查询来检查默认情况下是否已启用 :
SELECT sqlite_compileoption_used('ENABLE_LOAD_EXTENSION');
但只有当您知道sqlite3_enable_load_extension
从未被调用时,这才适合您。
无法访问内部SQLITE_LoadExtension
标志;只有在SQLite实际尝试加载扩展时才会读取它。
您可以尝试加载已知无效的扩展程序,例如load_extension('/dev/null')
。如果禁用了扩展加载,则错误消息将为not authorized
,而不是file too short
。