Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как засунуть в Access число типа double, а потом прочитать его. Возможно ли это? 
:(
    Опции темы
mrHunter
Дата 3.8.2008, 15:45 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 23.7.2007

Репутация: нет
Всего: нет



Ну что может быть проще? Казалось бы... Есть число типа double. Надо его сначала записать в БД Access, а потом прочитать. И сделать это так, чтобы прочитанное число из БД было тем же числом, которое мы и записывали, вернее, то которое было в программе...

Неужели эту задачу невозможно решить???
PM MAIL   Вверх
jonie
Дата 4.8.2008, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 8
Всего: 118



ну запиши число как текст. кто тебе это мешает сделать?


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Akina
Дата 4.8.2008, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 454



Нельзя записАть число в БАЗУ. Это теоретически невозможно. И желание проделать это говорит о некоторой необразованности в этой области.
Записывать числа можно в таблицы базы данных. Создайте в БД таблицу, содержащую минимум одно поле типа Double, и записывайте туда нужные данные. А потом читайте.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
mrHunter
Дата 5.8.2008, 06:55 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 23.7.2007

Репутация: нет
Всего: нет



Цитата(Akina @ 4.8.2008,  23:09)
Записывать числа можно в таблицы базы данных. Создайте в БД таблицу, содержащую минимум одно поле типа Double, и записывайте туда нужные данные. А потом читайте.

А совет "Создайте в БД таблицу, содержащую минимум одно поле типа Double"... при том что в Access нет такого типа говорит о большой образованности...

Добавлено через 4 минуты и 19 секунд
Цитата(jonie @ 4.8.2008,  22:49)
ну запиши число как текст. кто тебе это мешает сделать?

Да пробовал уже...

Попробуй число типа double 239.9359237546474 преобразовать в строку... Любое преобразование в строку "режет" число... Данное число (для примера) урезается на 1 цифру при преобразовании к строке, т.е. получаем "239.935923754647" (всего 15 цифр). И что бы я ни пробовал, всегда в преобразуемой строке получается не больше 15 цифр...
PM MAIL   Вверх
Bishop
Дата 5.8.2008, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 188
Регистрация: 3.6.2005
Где: Минск, Беларусь

Репутация: нет
Всего: 16



mrHunter,
уже имеем 4 (четыре) ваших темы с одним и тем же вопросом:Как это понимать? Как невежество? Как неуважение к сообществу?
Во второй (по списку) теме мною вам был дан исчерпывающий ответ. Цитирую: «Учите мат. часть». Там же я рекомендовал вам внимательнее прочитать документацию. Вы этого, очевидно, не сделали. Спрашивается, вы программируете или колдуете?
Ладно, попробую пояснить доходчивее, на пальцах (кто, если не я?). Читаем в документации:
Цитата
Remember that a floating-point number can only approximate a decimal number, and that the precision of a floating-point number determines how accurately that number approximates a decimal number. By default, a Double value contains 15 decimal digits of precision, although a maximum of 17 digits is maintained internally.
   (Переводчик)

Т.е. точность типа double — 15 значащих цифр. В вашем числе (239.9359237546474) — 16 значащих цифр. 16 больше 15, факт, следовательно ваше число округляется до 15 цифр. Что тут неясно? Также в приведенном отрывке можно прочесть, что внутренния точность типа достигает 17 цифр, что можно наблюдать в отладчике, и, по-видимому, это вводит вас в заблуждение. Просто поверьте, что та внутренняя точность, она совсем не точная и используется для служебных, так сказать, целей. Картинка по теме:
user posted image
Итак, главное что вы должны понять (или поверить) — точность не теряется. Точка. Не беспокойтесь по этому поводу.
Если для ваших задач недостаточно точности типа double, используйте тип decimal.
PM WWW ICQ   Вверх
Akina
Дата 5.8.2008, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 454



Цитата(mrHunter @  5.8.2008,  07:55 Найти цитируемый пост)
А совет "Создайте в БД таблицу, содержащую минимум одно поле типа Double"... при том что в Access нет такого типа говорит о большой образованности...

Тип Double в переводе на русский (Вы же искали на русском языке это английское слово, не так ли? до чего же странно, что не нашли) звучит как 

Тип данных = Числовой;
Размер поля = Двойное с плавающей точкой.

Надеюсь, теперь Вы сможете его найти.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
jonie
Дата 5.8.2008, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 8
Всего: 118



Цитата

Если для ваших задач недостаточно точности типа double, используйте тип decimal.
ну а если decimal не хватает, используйте длинную арифметику..


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0990 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.