
Jak v SQL dotazu nastavit vyhledávání výrazu, aby bylo non case-sensitive
Mám na PDA databázový program, který využívá vlastního jazyka SQL. Bohužel při standardním hledání typu:
WHERE něco LIKE '%cosi%'
důsledně rozlišuje mezi velkými a malými písmeny, což naopak většina klasických SQL jazyků nečiní a naopak je jim to (jak jsem zjistil na G.) vyčítáno.
Existuje v SQL syntaxu něco, čím by bylo možno shora uvedený dotaz doplnit, aby se hledání vykašlalo na rozlišování velkých a malých písmen?
Tohle je věc nastavení SQL severu. Obvykle se to nastavuje při instalaci serveru nebo nastavení databáze, kde si volíš, zda má být Case Sensitive nebo Insensitive
Ve tvém případě nezbývá nic jiného než oba výrazy převést např. na velká písmena, pokud to tvůj server umí
WHERE UPPER(něco) LIKE UPPER('%cosi%')
pripadne funkciu UPPER nahrad funkciou LOWER
Případně funkci UPPER funkcí UCASE nebo analogicky LCASE.
To není problém SQL serveru. Jedná se o program na PDA, který používá databáze vlastního formátu, překonvertované na zařízení ze souborů MS Accessu a ve kterých se může hledat pomocí SQL dotazů.
Jinak databáze na PDA vyexportované přímo z SQL serveru a zpracovatelné Query Analyzerem, případně programy na PDA, které přistupují přímo na databáze SQL serveru, s těmi znaky žádné problémy nemají.