我希望根据 Robert Harvey 的响应添加聚合函数 here他指向 this page 。我看到第一个文件 [extension-functions.c ],这是我需要的(特别是方差函数)。
如何将此文件的功能添加到我的 sqlite3 控制台?如果我在 Mac 上工作会有什么影响吗?
我尝试搜索答案,假设该文件称为扩展名,但扩展名一词也意味着文件末尾的内容(.db、.db3 或 .sqlite3),因此 Google 没有用。
最佳答案
除了@Mark Benningfield 的评论:
我在文件on this post的github上找到了该文件的链接(我不使用 Ubuntu,这就是我错过它的原因),接受的答案不是我想要的。然而,Github link提供了文档,这正是我正在寻找的。
在 Mac 上,我必须在控制台中运行以下命令:
-编译文件
gcc -fno-common -dynamiclib extension-functions.c -o libsqlitefunctions.dylib
-加载sqlite控制台
sqlite3 <database_name>
-在 SQLite 控制台中运行
SELECT load_extension('./libsqlitefunctions.dylib');
请注意,每次需要使用外部函数时都必须运行上面的行(例如相关文件 extension-functions.c 中的函数)。对于启动时的永久加载和其他操作系统,请参阅 same post 。我还没有尝试过后者,所以除了 macOS 之外我不能保证其他任何东西。
关于c - SQLite 使用 C 文件添加功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48617729/