:: Главная :: Решения :: Статьи :: Проект "Русский help" :: Файловый архив :: Фотоальбом :: Ссылки :: | ||
Л и с о в о д ы в с е х с т р а н, о б ъ е д и н я й т е с ь !!! |
Почему возвращается только часть числа. Первые символы | ||
---|---|---|
Вопрос
При чтении числовых данных с SQL-сервера возвращается только часть числа. Первые символы или только целая часть без дробной части. Причина Причина в настройках конкретного соединения с SQL-сервера. Явно или не явно установлены региональные настройки. Обратите внимание, речь идет не о настройках собственно сервера, а о настройках соединения с сервером! Проблема здесь в том, что числовые данные как правило, конвертируются в поля типа Numeric в среде FoxPro. А поля типа Numeric в FoxPro физически хранятся как символьные данные. Это значит, что в принципе, в такое поле можно записать любой символ. Вот ODBC и записал, например, символ запятой в соответствии с региональной настройкой. Но при чтении данных для FoxPro символ запятой - это не есть символ, относящийся к числовым данным (символом-разделителем целой и дробной части непосредственно в таблице является точка). Следовательно, будут прочитаны как число только те символы, которые стоят ДО символа запятой. Решение Решение зависит от того, каким способом были установлены соответствующие настройки соединения. MS SQL - сервер Если Вы использовали для установки соединения предварительно настроенный DSN, то зайдите в настройки DSN-соединения и снимите "птичку" с настройки "Use regional settings when outputting currency, numbers, dates, and times" Если Вы использовали для установки соединения строку SQLStringConnect(), то убедитесь, что в ней нет опции Regional или же она имеет значение Regional=No Oracle - сервер Здесь придется явным образом менять настройку текущей сессии через прямую команду SQLExec() примерно так
|
||
Тема | Просмотров | Написано | Написано |
---|---|---|---|
Работа с удаленными данными, SQL-серверами | 6150 | Владимир Максимов | 24.02.06 18:19 |
Как определить причину ошибки | 7432 | Владимир Максимов | 24.02.06 18:42 |
Как подавить выдачу системного окна настройки соединения в случае ошибки | 6972 | Владимир Максимов | 24.02.06 19:13 |
Как вызвать хранимую процедуру сервера | 7003 | Владимир Максимов | 24.02.06 19:33 |
Как передать параметры в хранимую процедуру сервера | 7552 | Владимир Максимов | 24.02.06 19:44 |
Как получить значение выходного параметра процедуры сервера | 7301 | Владимир Максимов | 24.02.06 19:57 |
Как получить значение функции сервера | 6521 | Владимир Максимов | 24.02.06 20:11 |
Почему возвращается только часть числа. Первые символы | 6511 | Владимир Максимов | 06.01.10 16:39 |
© 2006 Fox Club  |