我希望在我的应用程序中使用SQLite扩展,但SpatiaLite除外我找不到任何其他使用扩展的示例。以下帖子有一些建议,但没有任何让我更聪明的事:How to link a SQlite Extension Source File into Xcode for iPhone?
我尝试加载的扩展程序是:https://github.com/mateusza/SQLite-Levenshtein/blob/master/src/levenshtein.c
我已经编译了上面的扩展名,但当然我不能在我的应用程序中包含它,如:
SELECT load_extension('extension.sqlext');
有人可以告诉我如何:
1)编译sqlite以包含我的扩展名。
2)使用sqlite_auto_extension来包含我的扩展名。
编辑:我有sqlite合并以及现在包含在我的项目中的上述源文件,我只需要一个如何使用sqlite_auto_extension与上述扩展名一起使用的示例,以及在哪里调用它。
答案 0 :(得分:2)
实际上,似乎你不能为iOS项目使用动态库。 但是,在您的特定情况下,您可以获取该模块的源代码,将它们添加到项目(只有一个文件),并更改一些代码:int sqlite3_extension_init() 只调用sqlite3_create_function(db,“levenshtein”,2,SQLITE_ANY,0,levenFunc,0,0); 打开数据库后进行调用。