Autor Téma: SQLite odstranenie diakritiky z retazca  (Přečteno 1754 krát)

Viktor

  • Host
SQLite odstranenie diakritiky z retazca
« kdy: 15-03-2014, 20:29:38 »
Rad by som sa opytal, ako v SELECT odstranit diakritiku z retazca. Aktualne to riesim tak, ze si ulozim do tabulky dalsi stlpec bez diakritiky. Zabera to zbytocne miesto v db. Je mozne nieco take urobit v SQLite ?

SELECT RemoveDiacritics(Priezvisko) AS PriezviskoASCII FROM ZoznamZiakov

Na MS SQL mam urobenu funkciu

ALTER FUNCTION [dbo].[RemoveDiacritics](@input [varchar](1024))
RETURNS [varchar](1024) WITH EXECUTE AS CALLER
AS
BEGIN
  RETURN (SELECT @input COLLATE SQL_Latin1_General_CP1251_CI_AS)
END

Online Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 2964
  • Karma: 29
    • Verze Delphi: XE7 professional
Re:SQLite odstranenie diakritiky z retazca
« Odpověď #1 kdy: 16-03-2014, 09:50:27 »
Hm, zaberá miesto. Ale
  - je to rýchlejšie
  - ten stĺpec môžeš využiť aj na iné účely. Napríklad zoradenie, index...
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline geby

  • Plnoletý
  • ***
  • Příspěvků: 164
  • Karma: 13
    • Verze Delphi: 7, 2007, XE2, 10.2
    • Synapse
Re:SQLite odstranenie diakritiky z retazca
« Odpověď #2 kdy: 26-04-2014, 18:52:27 »
Ze se k tomu jeste vracim... ja to resim tak, ze jsem si napsal vlastni UDF funkci, ktera tu diakritiku odstrani. A kdyz potrebuji, tak tu funkci v nejakem tom selectu pouziji.

V sqlitevse udf funkce neukladaji do databaze, ale je to vlastne jen funkce ve tvem programu, ktera ma nejake predepsane rozhrani a na zacatku prace ty funkce zaregistrujes.

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Upozornění: do tohoto tématu bylo naposledy přispěno před 120 dny.
Zvažte prosím založení nového tématu.

Jméno: E-mail:
Ověření:
Datový typ v Delphi, který má True a False: