![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Чтобы избежать необходимости регистрировать все
сортирующие последовательности до того, как
база данных сможет использоваться, единственная функция обратного вызова
может быть зарегистрирована в
соединении с базой данных,
которое будет вызвано каждый раз, когда неопределенная
сортирующая последовательность требуется. Если функция зарегистрирована, используя sqlite3_collation_needed(),
то ей передаются названия неопределенных сортирующих последовательностей как
последовательности, закодированные в UTF-8. Если использована
sqlite3_collation_needed16(), имена передаются как UTF-16 в машинном порядке
байтов хоста. Запрос к любой функции заменяет существующий отзыв. Когда отзыв вызван, первым переданным аргументом является копия второго
аргумента sqlite3_collation_needed() или
sqlite3_collation_needed16(). Второй аргумент это соединение с базой данных.
Третий аргумент один из SQLITE_UTF8,
SQLITE_UTF16BE или
SQLITE_UTF16LE, указывая на самую желательную
форму требуемой функции сортирующей последовательности. Четвертый параметр
задает название необходимой сортирующей последовательности. Функция обратного вызова должна зарегистрировать желаемое сопоставление,
используя sqlite3_create_collation(),
sqlite3_create_collation16() или
sqlite3_create_collation_v2().
Choose any three.
SQLite C Interface
Сопоставление необходимых отзывов
int sqlite3_collation_needed(sqlite3*, void*,
void(*)(void*,sqlite3*,
int eTextRep,const char*));
int sqlite3_collation_needed16(sqlite3*, void*, void(*)(void*,sqlite3*,
int eTextRep,const void*));