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

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

глянь тут
http://code.google.com/p/sqlite1c/
и расскажи если получится.
...
Рейтинг: 0 / 0
UPPER и LOWER в SQLite
    #35928170
г.Гоша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это компонента для 1с и без 1с указанная библиотека не работает.
...
Рейтинг: 0 / 0
UPPER и LOWER в SQLite
    #35928815
Фотография BION
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторДля поиска без учета регистра надо использовать функцию 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
UPPER и LOWER в SQLite
    #35928827
Фотография BION
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
UPPER и LOWER в SQLite
    #35929393
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
г.ГошаНу и где взять?

Здесь можно взять модуль от Иоанниса:
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
UPPER и LOWER в SQLite
    #35929558
г.Гоша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это все исходники, а где взять скомпилированную библиотеку или можно подключить файлы *.с и *.h
...
Рейтинг: 0 / 0
UPPER и LOWER в SQLite
    #35930894
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
г.ГошаЭто все исходники, а где взять скомпилированную библиотеку или можно подключить файлы *.с и *.h

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


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