Как загрузить расширения в SQLite?
Мне нужна функция стандартного отклонения в SQLite. Я нашел один здесь:
http://www.sqlite.org/contrib?orderby=date
но его часть файла расширения для SQLite. Я никогда не устанавливал один из них раньше, и я не знаю, как это сделать. Я нашел эту существующую функцию, load_extension, at http://www.sqlite.org/lang_corefunc.html, но я не понимаю, что такое параметры X и Y.
В Основном, Я нужно, чтобы кто-то дал мне пошаговое руководство по установке файла расширения aggregate. Кто - нибудь может это сделать?
1 ответов
расширения SQLite-это библиотеки с динамической связью. Вы можете найти несколько примеров здесь (это ископаемых репозиторий, нажмите "Войти / заполнить captcha", чтобы включить гиперссылки). См., например,алгоритма MD5.c.
-
load_extension
должен быть включен в SQLite (pragma IIRC) - в качестве первого аргумента требуется путь к библиотеке
- второй аргумент-имя функции-точки входа (в MD5.с это
sqlite3_extension_init
). Его прототипом должен бытьint(sqlite3*, char **, const sqlite3_api_routines *)
. - в SQL, вы можете попробовать
SELECT load_extension('md5.so', 'sqlite3_extension_init');
или простоSELECT load_extension('md5.so');
вы можете попробовать скомпилировать md5.c
, а из оболочки sqlite используйте .load md5.so