Tema: Re: MSSQL : kabliai taskai
Autorius: Laimis
Data: 2011-07-15 18:14:22
>>> Float'e trupmeninė dalis yra atskiriama tašku.
>> bendrai žiūrint - ot ir ne. priklauso nuo aplikacijos ir regioninių
>> nustatymų:)
>
> Tai, kad ne. Nuo lokalės, kaip suprantu, priklauso tik reprezentavimas
> (pateikimas, atvaizdavimas), o T-SQL'e, įvesdamas/perduodamas float
> reikšmes, akivaizdu jau ir iš sintaksės, gali naudoti tik tašką, nes
> *kablelis* skiria parametrus ir to niekaip neišvengsi, nepakeisi.

Čia dar reikėtų paminėti, kad:
EXEC dbo.spAddValueCounter @ParamName = 'VTerm_Q_Sum', @Value = 17,34694

apskritai yra SQL serverio „konsolės“ reikalas, o ne programos; (padori) 
programa procedūrą kvies perduodama parametrus:

cmd.Parameters.Add("@VTerm_Q_Sum", SqlDbType.Float).Value = 17.34694;

ar

cmd.Parameters.AddWithValue("@VTerm_Q_Sum", 17.34694);


Akivaizdu, kad ir tokiu atveju, kai reikšmė perduodama įsiūtai, kaip 
dešimtainį skyriklį, neišvengiamai turi naudoti tašką, nebent reikšmę 
gauni/perduodi kintamuoju, o jame skaičius pagal lokalės nuostatas gali 
būti — gautas ir korektiškai priimtas/paverstas į „internal 
representation“ — ir su kitokiu „decimal separator“.