|
|
|
Junior Member
      
участник
Last Login: 27.12.2006 22:45
Сообщ.: 21,
Visits: 222
|
|
Здравствуйте уважаемые,
проблема очень большая возникла. Есть Oracle 8.1.7, через ODBC цепляю таблицу к акцессу 2002. При этом все числа в представлении акцесса сразу становятся целыми!!! Например, было 157.12, стало 15712.00. Раньше из этой ситуации выходил через Акцесс97, т.е. привязывал таблу в Акцессе97, потом открывал в Акцессе2002, все было тип-топ. Но сейчас Акцесс97 почти совсем не используется, и привязка новой таблы превращается в мучение. Посоветуйте что-нибудь, а? Разделитель разрядов - точка, разница (посмотрел) между форматом таблы в Асс97 и Асс2002 в том, что у 97-го просто писалось "число с плавающей точкой", а в 2002-м уже пишется "размерность 9, знаков после запятой 2" Да, в базе все конечно тип-топ. Может кто сталкивался...
Спасибо заранее
|
|
|
|
|
Supreme Being
      
участник
Last Login: 16.06.2006 15:16
Сообщ.: 832,
Visits: 9 229
|
|
попробуй вязать не сами таблицы, а VIEW во VIEW сделай преобразование для твоих числовых полей, чтобы ODBC понимал их как DOUBLE, а не как LONG
|
|
|
|
|
Junior Member
      
участник
Last Login: 27.12.2006 22:45
Сообщ.: 21,
Visits: 222
|
|
| Да, это помогает, спасибо. Но не спасает от главного - у меня морда задач акцессная, соответственно интерфейс ввода акцессный. Вьюха не катит. Интересность в другом - это бывает не везде и не всегда. Попытаемся с коллегами все-таки найти закономерность...
|
|
|
|
|
новичок
      
участник
Last Login: 28.02.2005 12:23
Сообщ.: 2,
Visits: 23
|
|
| Кажется данная проблема проявляется из-за ODBC, причём в зависимости от разной версии дробная часть либо просто отбрасывается, либо "запятая" пропадает. Это проявляется, если числовые данные в Oracle объявлены c дробной частью ( например, number(4,2)).Я выходил из положения тем, что просил разработчиков Oracle тип данных устанавливать как number. После этого всё работало.
|
|
|
|
|
новичок
      
участник
Last Login: 27.09.2005 10:47
Сообщ.: 3,
Visits: 34
|
|
У меня сейчас возникла таже проблема, но решать ее изменением структуры и созданием представлений нельзя
Есть ли какие-нибудь другие решения, уважаемые?
|
|
|
|
|
новичок
      
участник
Last Login: 17.10.2005 14:24
Сообщ.: 1,
Visits: 12
|
|
| Используй на клиентских машинах ODBC от Oracle 7 (для этого надо ставить клента Oracle 7)
|
|
|
|
|
Junior Member
      
участник
Last Login: 27.12.2006 22:45
Сообщ.: 21,
Visits: 222
|
|
Коллеги, тема достаточно старая (март 2004 года) поэтому решение конечно нашлось. Но раз уже полтора года сия тема интересует, отвечаю. Практика показала, что эта проблема однозначно решается установкой в регистре секции NLS_LANG в значение AMERICAN_AMERICA.CL8MSWIN1251 вместо дефолтового RUSSIAN_CIS. И будем считать тему закрытой.
С уважением, Алекс Гришин
|
|
|
|