Katalog ASP odkaz∙: Hledßte informace o ASP? Zkuste nßÜ nov² katalog odkaz∙ na ASP weby. Vφce zde...
TextLink.cz
VyÜlo: 11.12.2000 Rubrika: ASP - SQL

SQL: Jak p°evΘst textovou hodnotu na Φφselnou?
Podrobn² popis funkce VAL, kterß p°evede °et∞zec znak∙ na Φφslo. ZjednoduÜte si ₧ivot a pou₧φvejte VAL! Vφce v Φlßnku...

Pracujete-li s SQL dotazy a databßzemi, jist∞ ste se setkali s problΘmem p°evedenφ prom∞nnΘ na typ Φφslo.

P°evod mezi typem string a Φφslo vy₧aduje pouze databßze Access. U SQL Serveru je pou₧φvßnφ tΘto funkce zakßzanΘ.

VAL

Slibovanou slu₧bu Vßm zajistφ funkce VAL. Syntaxe je nßsledujφcφ.

VAL(string)

VAL p°evede °et∞zec znak∙ na Φφslo. Nejprve odstranφ z °et∞zce veÜkerΘ znaky "mezera", "tabulßtor" a "nov² °ßdek". Nßsledn∞ naΦφtß postupn∞ znaky °et∞zce zleva, dokud jsou to Φφslice, p°φpadn∞ desetinnß teΦka. Pokud funkce narazφ na prvnφ znak, kter² nenφ Φφslice nebo desetinnß teΦka, p°evod se ukonΦφ.

P°φklad:

SQL = "SELECT pole1, pole2 FROM tabulka WHERE pole1 = val('45')"

Funkce VAL je nutno vyu₧φt v p°φpad∞, kdy je sloupec v tabulce nadefinovan² jako typ Φφslo.

P°φklad:

hodnota = "456464" SQL = "SELECT pole1, pole2, pole3 FROM tabulka WHERE pole2 = VAL('"&hodnota&"')"

P°φklad:

hodnota = "4136516hea∙lmsdf445" SQL = "SELECT pole1, pole2, pole3 FROM tabulka WHERE pole2 = VAL('"&hodnota&"')"

V²sledek poslednφho p°φkladu bude vybrßnφ vÜech °ßdku, kde pole2 je rovno 4136516.

Jak to otestovat

Zalo₧te si tabulku a v nφ n∞kolik sloupc∙. Jednomu z nich dejte jako typ Φφslo a potΘ vytvo°te SQL dotaz, kter² mß jako podmφnku WHERE onen sloupec. Bez VAL se nehnete resp. strßnka bude hlßsit neoΦekßvanou chybu.

Zden∞k Cendra
ceskywap@ceskywap.cz



   Souvisejφcφ Φlßnky
TextLink.cz