Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.29;
Скачать: CL | DM;

Вниз

Как заставить базу понимать запятую в качестве разделителя?   Найти похожие ветки 

 
Olga   (2003-04-29 13:13) [0]

Когда в качестве разделителя целой и дробной части числа стоит точка - всё работает нормально. Но нужно чтоб разделителем была запятая. Выставляю запятую в панели управления->язык и стандарты, в настройках BDE. И даже в программе при старте делаю decimal separator=",". На одной машине срабатывает, а на двух начинает выводить только целую часть. Хотя все настройки вроде бы одинаковые.


 
stone ©   (2003-04-29 13:20) [1]

ничего не надо заставлять
есть разница между хранением данных и их отображением в приложениях


 
Anatoly Podgoretsky ©   (2003-04-29 13:21) [2]

Используй параметры, тогда не будешь зависить от настроек базы.


 
Olga   (2003-04-29 13:37) [3]

2stone
То есть, эта точка хранится в базе? А там её можно на зяпятую поменять? И почему тогда на одной машине всё перенастраивается как по нотам?

2Anatoly Podgoretsky
Насчёт параметров - очень интересно. Но ведь они только при модификации базы используются. А как быть с выводом на экран?


 
stone ©   (2003-04-29 13:51) [4]


> То есть, эта точка хранится в базе?

В базе не хранятся ни точки не запятые (как символы), а есть понятие разделитель дробной части.


> Но ведь они только при модификации базы используются. А
> как быть с выводом на экран?

У TField есть свойство DisplayFormat в котором задается формат представления данных в приложении


 
Olga   (2003-05-06 15:01) [5]

Displayformat не помог.
Кстати, обнаружилась интересная вещь - базы других форматов (например, Парадокс) отображают числа корректно с любыми системными настройками. А DB2 корректно работает только если в качестве разделителя указана точка.


 
Desdechado ©   (2003-05-06 15:59) [6]

что в системе стоит разделителем, то по умолчанию и используется.
если на сервере другой разделитель, то могут быть проблемы.


 
Olga   (2003-05-07 11:48) [7]

2Desdechado
Хочется, чтоб при любых настройках системы программа работала корректно.


 
Sheriff   (2003-05-07 11:59) [8]

лучше ловить ввод
if Key in [#44,#46] then Key:=DecimalSeparator;


 
Olga   (2003-05-08 12:52) [9]

А с выводом как быть?


 
Sheriff   (2003-05-08 13:36) [10]

i:=pos(DecimalSeparator,s);
if i>0 then s[i]:=#44;

только совсем не понятно зачем?


 
passm ©   (2003-05-08 17:31) [11]

В DB2 SQL разделитель дробной части числа точка не зависимо от настроек системы. Но непонятно от чего могла возникнуть такая потребность. Не юзерское это дело - писать запросы непосредственно :)



Страницы: 1 вся ветка

Текущий архив: 2003.05.29;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.021 c
6-94984
off
2003-03-29 20:53
2003.05.29
Управление курсором мыши удаленной системы


7-95139
demonyator
2003-03-28 18:32
2003.05.29
Как программно запретить запуск определённых файлов?


1-94907
tv
2003-05-16 18:30
2003.05.29
Запрет перетаскивания окна


11-94778
Garlic
2002-08-26 14:56
2003.05.29
KOleDB


14-95039
Namo
2003-05-07 17:07
2003.05.29
конкурс на лучший код ошибки