Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.

March 3, 2007 / by Zsolt Soczó

Case insensitive keresés firebirdben

Mostanában néha ránézek a firebirdre, mert a céges programban ez működik kliens oldalon.

Most pl. case insensitive keresésre van szükség, file nevek összehasonlítása miatt, de természetesen csak indexxel gyorsított megoldás érdekel.

Úgy látom a fb alapban nem tud olyat, mint az SQL Server, hogy egy adott ország szerinti rendezést case insensitive módon végezze el. A feladatot indexelt, számított oszloppal lehet megoldani.

Még nem próbáltam ki, majd ha a kolléga beépíti, elmesélem megy-e rendesen.

In Firebird 2.0 it is possible to create a so-called “Expression Index” on an UPPER() function call:
CREATE INDEX IDX_PERSON_LASTNAME ON PERSONS COMPUTED BY (UPPER (LAST_NAME COLLATE DE_DE))

From now on, it is possible to search using exactly the same expression:
SELECT * FROM PERSONS WHERE UPPER (LAST_NAME COLLATE DE_DE) = UPPER(:SEARCH_STRING COLLATE DE_DE)

Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.