If there can be a culture insensitive format for dates (yyyymmdd) then why is there no such thing as a culture insensitive format for decimals?
I suggest a use of # or ~ instead of the decimal separator in update and insert scripts only.
And it would be allowed only in numeric/decimal/float datatypes.
so you could do:
create table t1 (MyDecimalCol decimal (16,3))
insert into t1 (MyDecimalCol)
select 123#456 union all
select 789#123
select MyDecimalCol
from t1
-- would give:
123.456
789.123
-- or
123,456
789,123
-- depending on your locale
Wouldn't that be great?
I already suggested to Microsoft a culture neutral decimal separator a while back.
(Does anyone know the URL of the bug/feature request page on MS page? It's impossible to find it...)
Their answer was something like:
"Thanx for the suggestion. we'll look into it for the next verion of sql server."
So Katmai (SS2k7or8) better have this :)
UPDATE:
Thanx to Branko who pointed me to the MS feedback page in comments I found my submission of the problem.
You can look and vote for it here.