Rechercher : dans
Par :

[Oracle]Le type des champs de ALL_TAB_COLUMNS

Dernière réponse le 22 fév 2008 à 12:07:40 rixan, le 22 fév 2008 à 09:57:31 
 Signaler ce message aux modérateurs

Bonjour,

On connait les infos sur une table avec "DESCRIBE nom_table" et repertorier les champs et types d'une table avec
SELECT COLUMN_NAME, DATA_TYPE FROM all_tab_columns WHERE table_name = '...'

Mais comment savoir les infos sur les types, nullable ou pas des champs de cette vue all_tab_columns. On peut faire "DESCRIBE all_tab_columns" mais pas un SELECT sur
En fait, sous Visual C++, j'ai voulu obtenir dans un type VARIANT le résultat d'un select data_type sur une table mais il y a exception:
DataTypeEnum nDataType = (DataTypeEnum)(long) a_fieldsPtr->GetItem("DATA_TYPE")->Value;

(REM : ceci est possible sous SQL Server)

Meilleures réponses pour « [Oracle]Le type des champs de ALL_TAB_COLUMNS » dans :
Oracle – les différents types de restaurations VoirOracle – les différents types de restaurations La restauration sous Oracle dépends essentiellement de la méthodologie de sauvegarde adoptée, elle dépend aussi de ce que l’administrateur de base de données souhaite restaurer. Les différentes...
Oracle - Les séquences VoirCet article s'appuie sur la version 8.1.6 d'Oracle. Une séquence est un objet de base de données Oracle, au même titre qu'une table, une vue, etc... Autrement dit, il appartient à un utilisateur, on peut le manipuler, le modifier, à condition...
Oracle - Les processus VoirLes processus Le fonctionnement de la base Oracle est régi par un certain nombre de processus chargés en mémoire permettant d'assurer la gestion de la base de données. On distingue généralement deux types de processus : les processus utilisateurs...
Langage C++ - Les types de données VoirLes types de données Les données manipulées en langage C++, comme en langage C, sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître...

1

ranjok, le 22 fév 2008 à 11:13:22

ALL_TAB_COLUMNS permet de décrire les colonnes d'une table, d'une vue et de clusters sous ORACLE.
OWNER VARCHAR2(30)
TABLE_NAME VARCHAR2(30)
COLUMN_NAME VARCHAR2(30)
DATA_TYPE VARCHAR2(106)

DATA_TYPE_MOD VARCHAR2(3)

DATA_TYPE_OWNER VARCHAR2(30)

DATA_LENGTH NUMBER
DATA_PRECISION NUMBER

DATA_SCALE NUMBER

NULLABLE VARCHAR2(1)

COLUMN_ID NUMBER
DEFAULT_LENGTH NUMBER

Répondre à ranjok

2

ranjok, le 22 fév 2008 à 12:05:43

Bref, DATA_TYPE est donc un VARCHAR2 (106) !!!

Répondre à ranjok

3

 rixan, le 22 fév 2008 à 12:07:40

Merci ranjok pour cette info et comment faire pour mon programme C++ alors

DataTypeEnum nDataType = (DataTypeEnum)(long) a_fieldsPtr->GetItem("DATA_TYPE")->Value;

Répondre à rixan