Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Numeric... Decimal... А отличия есть в них? [IB6.x, FB 1.5]


Карелин Артем ©   (2005-11-18 14:37:00) 

Скажем ошибки округления при конвертации из одного типа в другой и т.д.


Карелин Артем   (2005-11-19 08:02:00) [1]

Понял. Мужики, спасибо за ответы!


Johnmen   (2005-11-18 17:34:00) [2]

>Romkin ©   (18.11.05 17:26) [13]

Да, это есть...:)


Romkin   (2005-11-18 17:27:00) [3]

Johnmen ©   (18.11.05 17:25) [12] Вроде я ответил по существу :)


Romkin   (2005-11-18 17:26:00) [4]

Johnmen ©   (18.11.05 17:24) [11] разница заключается в том, что при размере от 1 до 4 numeric хранится как smallint, а decimal - как integer :)
Больше никакой разницы между ними нет.


Johnmen   (2005-11-18 17:25:00) [5]

>Romkin ©   (18.11.05 17:21) [10]

Роман, ну посмотри тему ветки...
:)


Johnmen   (2005-11-18 17:24:00) [6]

>Desdechado ©   (18.11.05 17:04) [9]

Ну разница то в чём??????


Romkin   (2005-11-18 17:21:00) [7]

Johnmen ©   (18.11.05 16:31) [8] Есть :)

Precision Dialect 1                                       Dialect 3
1 to 4     SMALLINT for NUMERIC datatypes
            INTEGER for DECIMAL datatypes       SMALLINT
5 to 9     INTEGER                                       INTEGER
10 to 18  DOUBLE PRECISION                        INT64

То есть, в первом диалекте отличие есть.


Desdechado   (2005-11-18 17:04:00) [8]

2 Johnmen
см. [6]


Johnmen   (2005-11-18 16:31:00) [9]

>Romkin ©   (18.11.05 16:20) [7]
>Разница между ними есть :) Но незначительная (см способ хранения).

Разницы нет.
А где посмотреть способ хранения?


Romkin   (2005-11-18 16:20:00) [10]

Разница между ними есть :) Но незначительная (см способ хранения).
А вот разница между диалектами - существенная, эти типы с длиной 10 и выше храняться и обрабатываются в первом диалекте как double precision, округление - только при выдаче. А в третьем - как int64, там честно.
Так что смотреть надо больше на диалект.


Desdechado   (2005-11-18 15:41:00) [11]

читаем Data Definition Guide.pdf - Specifying Datatypes - Defining Numeric Datatypes - Fixed-decimal Datatypes


Anatoly Podgoretsky   (2005-11-18 14:59:00) [12]

Вот например для JET
Тип NUMERICотныне не является синонимом типов FLOAT или DOUBLE. Тип NUMERICтеперь используется как синоним типа DECIMAL.


Anatoly Podgoretsky   (2005-11-18 14:51:00) [13]

Не помню на каких серверах конкретно, но внутренняя реализация для Numeric была Integer, а для Decimal была BCD


Карелин Артем   (2005-11-18 14:45:00) [14]


> Anatoly Podgoretsky ©   (18.11.05 14:39) [2]

А можно конкретнее про зависимость от сервера? Данные между разными серверами и возможно на разных платформах разными гоняться будут. Размерность соблюдаться будет.


Anatoly Podgoretsky   (2005-11-18 14:39:00) [15]

Зависит от сервера, но обычно нет.


Johnmen   (2005-11-18 14:38:00) [16]

Нет отличий.
Но важно, что конкретно Numeric и Decimal, т.е. размерность.


Наверх

Титульная страница Поиск, карта сайта Написать письмо