Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / SQLite [игнор отключен] [закрыт для гостей] / UPPER и LOWER в SQLite / 11 сообщений из 11, страница 1 из 1
12.05.2007, 22:21
    #34521281
user34
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
Подскажите, можно ли каким-либо образом реализовать UPPER и LOWER в SQLite для русских букв? Для английских все ОК!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
01.04.2009, 19:29
    #35906725
Super_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
та же проблема...

Камеры ГАИ на карте
...
Рейтинг: 0 / 0
10.04.2009, 20:20
    #35925884
MBG
MBG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
Нужно взять сборку с поддержкой unicode. Неодновратно здесь же давал ссылки на доступные варианты.
...
Рейтинг: 0 / 0
12.04.2009, 19:53
    #35927088
г.Гоша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
Ну и где взять?
...
Рейтинг: 0 / 0
13.04.2009, 10:49
    #35927687
PPA
PPA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
г.Гоша,

глянь тут
http://code.google.com/p/sqlite1c/
и расскажи если получится.
...
Рейтинг: 0 / 0
13.04.2009, 13:15
    #35928170
г.Гоша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
Это компонента для 1с и без 1с указанная библиотека не работает.
...
Рейтинг: 0 / 0
13.04.2009, 18:14
    #35928815
BION
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
авторДля поиска без учета регистра надо использовать функцию upper, которая также не работает с UTF-8.

Выход: писать самому функцию upper. Если пишешь на Delphi, вот примерчик как можно реализовать функцию upper:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
 unit  HiAsmUnit;

 interface 

 uses  kol,Share,Debug,Windows,SQLite3Api,hiSQLite_DB;

 type 
THiAsmClass =  class (TDebug)
 public 
dbHandle:THI_Event;
 procedure  addFunction( var  _Data:TData; idx:word);
 end ;

 implementation 

 procedure  myFunc(ctx:pointer; nArg:integer; args:ppvalue); cdecl;
 var  s: string ;
 begin 
s:=sqlite3_value_text(args^);
CharUpperBuff(@s[ 1 ],Length(s));
sqlite3_result_text(ctx,PChar(s),Length(s), 0 );
 end ;

 procedure  THiAsmClass.addFunction;
 var  dt:TData;
 begin 
dt := ReadData(_Data,dbHandle, nil );
 if  _IsObject(dt,SQLite_GUID)  then   begin 
sqlite3_create_function(ToObject(dt),PChar('UPPER'), 1 ,SQLITE_ANY, nil ,@myFunc, nil , nil );
 end ;
 end ;

 end .
ЗЫ: Код написан для программы HiAsm, но думаю не составит труда перевести его на Delphi
...
Рейтинг: 0 / 0
13.04.2009, 18:18
    #35928827
BION
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
...
Рейтинг: 0 / 0
14.04.2009, 01:56
    #35929393
MBG
MBG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
г.ГошаНу и где взять?

Здесь можно взять модуль от Иоанниса:
http://ioannis.mpsounds.net/blog/2007/12/19/sqlite-native-unicode-like-support/

Еще см. модуль ICU в официальном дереве исходников SQLite. Виндовую сборку можно взять тут:
http://mobigroup.ru/files/sqlite3.6.2-win.tar.bz2

Дебиановский репозиторий, где выложен пакет с энтерпрайз-версией SQLite (с множеством дополнительных модулей):
https://mobigroup.ru/page/debian
Вышеуказанная сборка SQLite используется на продакшен-серверах и является хорошо проверенной и стабильной, но может "отставать" от версии на офсайте или, наоборот, содержать патчи из cvs-репозитория. Описание модулей см. в исходниках, также можно обратиться за консультацией в рассылку sqlite-users.
...
Рейтинг: 0 / 0
14.04.2009, 09:12
    #35929558
г.Гоша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
Это все исходники, а где взять скомпилированную библиотеку или можно подключить файлы *.с и *.h
...
Рейтинг: 0 / 0
14.04.2009, 15:05
    #35930894
MBG
MBG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
UPPER и LOWER в SQLite
г.ГошаЭто все исходники, а где взять скомпилированную библиотеку или можно подключить файлы *.с и *.h

Вы вообще читаете, что вам отвечают? Вторая ссылка на бинари. А самому собрать можно с помощью MinGW, к примеру. Ну или в вижуал студии, если у вас этот монстр уже проживает на рабочей машине.
...
Рейтинг: 0 / 0
Форумы / SQLite [игнор отключен] [закрыт для гостей] / UPPER и LOWER в SQLite / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]