Comment faire FLOTTER de la carte/se rapportent au NOMBRE de Oracle 10g?

Quel est le type de données FLOAT dans Oracle 10g et quel rapport avec le NOMBRE?

La seule référence que je peux trouver à FLOTTER dans la documentation Oracle est dans le BINARY_DOUBLE section de cette page: http://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements001.htm#i140621 Il semble indiquer qu'il stocke un nombre à virgule flottante et vous permet de spécifier les bits de précision, mais il ne fait pas référence au type de NUMÉRO. Le 11g documents ne mentionnent pas FLOTTER à tous.

Le livre "Expert Oracle Architecture de Base de données: Base de données Oracle 9i, 10g et 11g Techniques de Programmation et de Solutions, Deuxième Édition" dit:

En plus du NOMBRE, BINARY_FLOAT, et BINARY_DOUBLE types, Oracle du point de vue syntaxique prend en charge les types de données numériques:

Quand je dis "du point de vue syntaxique prend en charge", je veux dire qu'une instruction CREATE peut utiliser ces types de données, mais sous les couvertures, ils sont tous vraiment le type de NUMÉRO. ...

  • FLOAT(p): Cartes pour le type de NUMÉRO.

Ce que je ne comprends pas, c'est comment elle correspond à un NOMBRE.

NUMBER(p) me permet de spécifier la précision, mais l'échelle par défaut est 0. Il semble que FLOAT(p) est la cartographie de NUMBER(decimal p, *), qui est, de précision fixe mais variable d'échelle, ce qui n'est pas quelque chose que le type de NUMÉRO permet aussi loin que je peux dire.

Donc, le FLOTTEUR n'est pas simplement un alias, mais fournit également le comportement de ce NOMBRE par lui-même n'offre pas?

Je n'ai pas une instance Oracle portée de main pour vérifier, mais si je me souviens bien FLOTTEUR est défini dans le paquet SYS.STANDARD comme un sous-type de NUMÉRO. (Dans Oracle plus types numériques sont des sous-types de NOMBRE. Je crois que BINARY_FLOAT et BINARY_DOUBLE sont l'un des très rares exceptions. PLS_INTEGER peut-être un autre, mais je ne suis pas sûr - vérifier SYS.STANDARD).
oui, elle dit subtype FLOAT is NUMBER; -- NUMBER(126), mais là encore, il dit aussi subtype BINARY_FLOAT is NUMBER;...

OriginalL'auteur takteek | 2013-07-02