Archive

Posts Tagged ‘sqlite’

[Перевод] Шифрование SQLite с помощью SQLCipher (iOS/Mac)

January 22nd, 2011 No comments

Оригинал на английском (disclaimer: перевод вольный)

SQLite является самым распространенным средством  для хранения данных на iPhone со стабильным API и хорошей документацией. Очевидно, что не хотелось бы мешать код приложения с собственно шифрованием, а делать это как можно прозрачней.

Такую функциональность предоставляют SQLCipher и OpenSSL. Оба проекта замечательны своим открытым исходным кодом, а также поддержкой Mac/Windows/Linux.

Итак, что нам потребуется…

Read more…

Python и полнотекстовый поиск (FTS) в sqlite

August 10th, 2009 No comments

Задача: получить поиск по всему тексту в питоне.

Качаем последний sqlite-amalgamation (основное отличие – вся библиотека в одном файле)
curl -O http://www.sqlite.org/sqlite-amalgamation-3.6.17.tar.gz

Распаковываем:
tar xzf sqlite-amalgamation-3.6.17.tar.gz

Переходим в sqlite-3.6.17:
Конфигурируем с включенным FTS3:
CFLAGS="-Os -DSQLITE_ENABLE_FTS3=1" ./configure

Билдим и устанавливаем
make
sudo make install

Проблема: нельзя заменить системную, т.к. у нас нет 64битного билда и поэтому некоторые программы, расчитывающие на системную будут вылетать.

Решение: используем свою собственную библиотеку только для питона:

Переходим в папку питона:
cd /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-dynload/

Изменяем линки в загрузочной библиотеке:
install_name_tool -change /usr/lib/libsqlite3.0.dylib /usr/local/lib/libsqlite3.dylib _sqlite3.so

Запускаем питон и проверяем:
python
Python 2.5.1 (r251:54863, Feb 6 2009, 19:02:12)
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> sqlite3.sqlite_version
'3.6.17'

Categories: development Tags: , ,