[Oracle]Le type des champs de ALL_TAB_COLUMNS

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)

3 réponses

  1. 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
    0
    1. Bref, DATA_TYPE est donc un VARCHAR2 (106) !!!
      0
      1. Merci ranjok pour cette info et comment faire pour mon programme C++ alors

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