Databáze > Ostatní DB

SQLite sort s diakritikou

(1/2) > >>

Viktor:
Rad by som sa opytal, ako nastavit SQLite aby zotriedil data s diakritikou v spravnom poradi

Aktualne mi dotaz vrati :

SELECT ID, Nazov FROM Tabulka ORDER BY Nazov

   2    Dokončené
   0    Nezačaté
   4    Odložené
   1    Prebieha
   3    Čaká sa na niekoho ďalšieho

Stanislav Hruška:
SQLite nepoznám. Ale každá DB má možnosť nastaviť kódovú stránku. Tam bude zakopaný pes.

Mi.Chal.:
Tak s collation na tom nejsou moc dobře a na výběr jsou asi tak tři možnosti, viz http://www.sqlite.org/datatype3.html dole

Podle http://www.devbook.cz/diskuzni-forum-java/sqlite---problem-s-diakritikou-51ac887728345 to bude asi nejlepší řadit až v aplikaci. Jestli tam máš jenom těch pár položek, tak to výkonnostní problém nebude.

pf1957:

--- Citace: Stanislav Hruška  16-03-2014, 09:47:10 ---SQLite nepoznám. Ale každá DB má možnosť nastaviť kódovú stránku. Tam bude zakopaný pes.

--- Konce citace ---
Kazda ne. SQLite je pomerne unikatni strojek, ktery je postaven na  myslence ukladat sloupce jako null terminated strings, do kterych si muzes nacpat, co je libo a pak si za to sam zodpovidat - pouziva dynamicke datove typy (z duvodu optimalizace do toho casem zanesli trochu chaos, ale ta puvodni myslenka zustava).

Puvodne pouzivala ANSI kodovani, dnes se asi nejcasteji pouziva UTF8 a strojek podporuje pouze 3 zakladni razeni: BINARY,  NOCASE a RTRIM. Pokud chces neco jineho, dela se to tak, ze si pod nejakym jmenem nadefinujes vlastni razeni tj. v podstate zaregistrujes porovnavaci funkci (v cdecl). Takovych funkci = razeni muzes mit kolik chces. A jakmile mas vlastni kolacovani, tak ho pouzijes zpusobem, jako u ostatnich DB: pri vytvareni tabulky, v selectu, v order by klauzuli

Takze rozhodujici je, jaky pouzivas wrapper a jak ti v tom pomuze. Ale tady ti uz nepomuzu ja, protoze v dobe, kdy jsem s SQLite neco delal, tak kolacovani nemela a my ho v backoffice aplikacich nikdy na nic nepotrebovali.

TLama:

--- Citace: pf1957  16-03-2014, 10:59:39 ---Takze rozhodujici je, jaky pouzivas wrapper a jak ti v tom pomuze.

--- Konce citace ---

Např. Any(Fire)DAC má k vytvoření vlastních collation komponentu TADSQLiteCollation.

Navigace

[0] Seznam témat

[#] Další strana

Přejít na plnou verzi