[mssql] konwersja string -> int
=?ISO-8859-2?Q?Rafa=B3?= Markiewicz - 08-04-2006 00:04
[mssql] konwersja string -> int
Witam, Mam pole typu varchar, potrzebuje zrobić konwersję na int. Idzie poprzez CAST(), ale w przypadku niemożliwości konwersji (np. litery) dostaje błąd. Pytanie brzmi: czy da się ominąć ten błąd? Tzn, w przypadku kiedy nie da się konwertować, zwrócić jakąś domyślna wartość, np. 0??
Rufik
Grzegorz Danowski - 08-04-2006 00:04
Użytkownik "Rafał Markiewicz" <rufik_@poczta.onet.pl> napisał w wiadomości news:e15d2k$103$1@atlantis.news.tpi.pl... <cite> Witam, Mam pole typu varchar, potrzebuje zrobić konwersję na int. Idzie poprzez CAST(), ale w przypadku niemożliwości konwersji (np. litery) dostaje błąd. Pytanie brzmi: czy da się ominąć ten błąd? Tzn, w przypadku kiedy nie da się konwertować, zwrócić jakąś domyślna wartość, np. 0?? </cite>
Może przyda ci się funkcja Isnumeric() G.
=?ISO-8859-2?Q?Rafa=B3?= Markiewicz - 08-04-2006 00:04
Grzegorz Danowski wrote:
> Może przyda ci się funkcja Isnumeric() > G.
Dzięki, tego oczekiwałem :)
R.
GREGOR - 11-04-2006 00:22
Użytkownik "Rafał Markiewicz" <rufik_@poczta.onet.pl> napisał w wiadomości news:e15fhf$bcn$1@atlantis.news.tpi.pl... Grzegorz Danowski wrote:
> Może przyda ci się funkcja Isnumeric() > G.
Dzięki, tego oczekiwałem :)
R.
sprawa nie jest taka prosta, to że isnumeric zwraca 1 nie znaczy, że da sie to zamienić na inta,
przykład:
print isnumeric('9e10') print cast('9e10' as int)
na bazie tego przykładu wszystko stanie sie jasne i pozwoli na utworzenie funkcji z odpowiednimi zabezpieczeniami.
pozdr GREGOR
Marcin Miga - 11-04-2006 00:22
GREGOR wrote:
> > Użytkownik "Rafał Markiewicz" <rufik_@poczta.onet.pl> napisał w > wiadomości news:e15fhf$bcn$1@atlantis.news.tpi.pl... Grzegorz > Danowski wrote: > > > Może przyda ci się funkcja Isnumeric() > > G. > > Dzięki, tego oczekiwałem :) > > R. > > sprawa nie jest taka prosta, > to że isnumeric zwraca 1 nie znaczy, że da sie to zamienić na inta, > > przykład: > > print isnumeric('9e10') > print cast('9e10' as int) > > na bazie tego przykładu wszystko stanie sie jasne i pozwoli na > utworzenie funkcji z odpowiednimi zabezpieczeniami. >
'9e10' jest liczbą zapisana w postaci zmiennoprzecinkowej. Więc to nie int, tylko real lub float.
pozdrawiaMM -- Marcin M. Miga "More matter with less art"
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Zdalny =?ISO-8859-2?Q?dost=EAp_do_MSSQL_bez_zarz=B1dzani?==?ISO-8859-2?Q?a?=
[MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?=
[MSSQL 2k] - jak =?ISO-8859-2?Q?pod=B3=B1czy=E6_serwer_na_?==?ISO-8859-2?Q?porcie_innym_ni=BF_1433=3F?=
MSSQL Express czy Oracle Express
MSSQL 2005 i uruchamianie procedury o =?ISO-8859-2?Q?okre=B6lone?==?ISO-8859-2?Q?j_godzinie?=
[MSSQL 2000] =?ISO-8859-2?Q?wywo=B3anie_procesu_z_poziomu_?==?ISO-8859-2?Q?job=27a?=
[MSSQL 2K] =?ISO-8859-2?Q?Wp=B3yw_ustawie=F1_regionalnych_?==?ISO-8859-2?Q?serwera_na_zapytania?=
Pobierananie danych z innej bazy danych w MSSQL
Migracja MSSQL 2005 CTP na 2005 Express
MSSQL , funkcja pobierajaca sama date (bez czasu) w funkcji
zanotowane.pldoc.pisz.plpdf.pisz.plshanti.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|