Accéder aux fichiers de mapping et définir les mappings de types - Cloud - 8.0

Guide d'utilisation du Studio Talend

Version
Cloud
8.0
Language
Français
Product
Talend Big Data
Talend Big Data Platform
Talend Cloud
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Studio Talend
Content
Création et développement
Last publication date
2024-02-27

Procédure

  1. Dans la barre d'outils de la fenêtre principale du Studio Talend, cliquez sur Project settings ou cliquez sur File > Edit Project Properties dans la barre de menu pour ouvrir la boîte de dialogue Project Settings.
  2. Dans l'arborescence de la boîte de dialogue, développez General et sélectionnez Metadata of TalendType pour ouvrir la vue Metadata of TalendType, listant les fichiers de mapping pour tous les types de bases de données utilisés dans le Studio Talend.
    Configuration des métadonnées TalendType dans la boîte de dialogue Project Settings.

    Vous pouvez importer, exporter ou supprimer un fichier de mapping en cliquant sur Import, Export ou Remove, respectivement.

    Vous pouvez modifier un fichier de mapping selon vos besoins en double-cliquant sur le fichier ou en sélectionnant le fichier et en cliquant sur le bouton Edit pour ouvrir la boîte de dialogue Edit Mapping File, puis en modifiant le code XML directement dans la boîte de dialogue.

    Si vous avez installé la mise à jour mensuelle 8.0 R2022-07 du Studio Talend ou une mise à jour plus récente fournie par Talend :

    • Les fichiers de mapping de types de données par défaut peuvent uniquement être modifiés. Après modification, vous pouvez les restaurer comme les fichiers de mapping de types de données Talend par défaut correspondant à votre version actuelle du Studio Talend.
    • Les fichiers de mapping de types de données par défaut peuvent être migrés automatiquement, après application d'une mise à jour mensuelle du Studio Talend.

    Lorsque vous définissez un mapping de types, vous devez mapper à la fois du type Talend au type base de données et du type base de données au type Talend.

    • L'élément <dbTypes> et ses éléments enfants <dbType> définissent les types de bases de données supportés. Pour ajouter un type de base de données dans le fichier de mapping, vous devez ajouter un élément <dbType> sous l'élément <dbTypes>. L'exemple ci-dessous ajoute deux types de bases de données BOOLEAN et YESNO.
      <dbType type="BOOLEAN"/>
      <dbType type="YESNO"/>

      Vous pouvez configurer le modèle par défaut pour chaque type de date. Cela permet aux modèles de date pour les colonnes de type date d'être automatiquement configurés lors de la récupération ou détection du schéma d'une table. L'exemple suivant ajoute deux types de base de données DATE et DATETIME.

      <dbType type="DATE" defaultPattern="yyyy-mm-dd"/>
      <dbType type="DATETIME" defaultPattern="yyyy-mm-dd hh:mm:ss.SSSSSS"/>
    • L'élément <talendToDbTypes> et ses éléments enfants <talendType> définissent une liste de types de bases de données suggérés et le type de base de données par défaut lors de la configuration d'un type Talend pour une colonne de métadonnées. Pur mapper un type Talend vers un ou plusieurs type(s) de base(s) de données, vous devez ajouter un élément talendType sous l'élément <talendToDbTypes>. L'exemple ci-dessous mappe le type Talend id_Boolean à deux types de bases de données BOOLEAN et YESNO.
      <talendType type="id_Boolean">
      	<dbType type="BOOLEAN"/>
      	<dbType type="YESNO"/>
      </talendType>
    • L'élément <dbToTalendTypes> et ses éléments enfants <dbType> définissent une liste de types Talend suggérés et le type Talend par défaut lors de la récupération du schéma depuis la base de données. Pour mapper un ou plusieurs type(s) Talend de bases de données, vous devez ajouter un élément dbType sous l'élément <dbToTalendTypes>. L'exemple ci-dessous mappe le type de base de données YESNO au type Talend id_Boolean.
      <dbType type="YESNO">
      	<talendType type="id_Boolean"/>
      </dbType>
    Remarque : Les attributs default, defaultLength, defaultPrecision, ignoreLen, ignorePre et preBeforelen dans les fichiers de mappings de types Talend ne sont pas pris en compte. Vous n'avez pas besoin d'ajouter ces attributs lors de la définition de nouveaux mappings de types.

    Ci-dessous se trouve le fichier de mapping de métadonnées XML pour la base de données Access :

    <?xml version="1.0"?>
    <mapping>
        <dbms product="ACCESS" id="access_id" label="Mapping Access" default="true">
            <dbTypes>
                <dbType type="BIT" ignoreLen="true" ignorePre="true"/>
                <dbType type="BOOLEAN" ignoreLen="true" ignorePre="true"/>
                <dbType type="COUNTER"/>
                <dbType type="DATE" ignoreLen="true" ignorePre="true"/>
                <dbType type="DOUBLE" ignoreLen="true" ignorePre="true"/>
                <dbType type="DECIMAL" ignoreLen="true" ignorePre="true"/>
                <dbType type="FLOAT" ignoreLen="true" ignorePre="true"/>
                <dbType type="INTEGER" ignoreLen="true" ignorePre="true"/>
                <dbType type="NUMERIC" ignoreLen="true" ignorePre="true"/>
                <dbType type="REAL" ignoreLen="true" ignorePre="true"/>
                <dbType type="SMALLINT" ignoreLen="true" ignorePre="true"/>
                <dbType type="TINYINT" ignoreLen="true" ignorePre="true"/>
                <dbType type="TIME" ignoreLen="true" ignorePre="true"/>
                <dbType type="TIMESTAMP" ignoreLen="true" ignorePre="true"/>
                <dbType type="VARCHAR" default="true" defaultLength="200" ignorePre="true"/>
                <dbType type="DATETIME" ignoreLen="true" ignorePre="true"/>
                <dbType type="MEMO" ignoreLen="true" ignorePre="true"/>
                <dbType type="YESNO" ignoreLen="true" ignorePre="true"/>
            </dbTypes>
    
            <language name="java">
                <talendToDbTypes>
                    <!-- Adviced mappings  -->
                    <talendType type="id_List"/>
                    <talendType type="id_Boolean">
                        <dbType type="YESNO" default="true"/>
                        <dbType type="BOOLEAN"/>
                    </talendType>
                    <talendType type="id_Byte">
                        <dbType type="TINYINT" default="true"/>
                        <dbType type="SMALLINT"/>
                        <dbType type="INTEGER"/>
                    </talendType>
                    <talendType type="id_byte[]"> </talendType>
                    <talendType type="id_Character">
                        <dbType type="VARCHAR" default="true"/>
                    </talendType>
                    <talendType type="id_Date">
                        <dbType type="DATE" default="true"/>
                        <dbType type="TIMESTAMP"/>
                        <dbType type="TIME"/>
                        <dbType type="DATETIME"/>
                    </talendType>
                    <talendType type="id_BigDecimal">
                        <dbType type="NUMERIC" default="true"/>
                        <dbType type="DOUBLE"/>
                        <dbType type="FLOAT"/>
                        <dbType type="DECIMAL"/>
                        <dbType type="REAL"/>
                    </talendType>
                    <talendType type="id_Double">
                        <dbType type="DOUBLE" default="true"/>
                        <dbType type="NUMERIC"/>
                        <dbType type="FLOAT"/>
                        <dbType type="DECIMAL"/>
                        <dbType type="REAL"/>
                    </talendType>
                    <talendType type="id_Float">
                        <dbType type="FLOAT" default="true"/>
                        <dbType type="DOUBLE"/>
                        <dbType type="NUMERIC"/>
                        <dbType type="DECIMAL"/>
                        <dbType type="REAL"/>
                    </talendType>
                    <talendType type="id_Integer">
                        <dbType type="INTEGER" default="true"/>
                        <dbType type="SMALLINT"/>
                        <dbType type="TINYINT"/>
                        <dbType type="COUNTER"/>
                    </talendType>
                    <talendType type="id_Long">
                        <dbType type="INTEGER" default="true"/>
                        <dbType type="SMALLINT"/>
                        <dbType type="TINYINT"/>
                        <dbType type="COUNTER"/>
                    </talendType>
                    <talendType type="id_Object"> </talendType>
                    <talendType type="id_Short">
                        <dbType type="SMALLINT" default="true"/>
                        <dbType type="INTEGER"/>
                        <dbType type="TINYINT"/>
                        <dbType type="COUNTER"/>
                    </talendType>
                    <talendType type="id_String">
                        <dbType type="VARCHAR" default="true"/>
                        <dbType type="MEMO"/>
                    </talendType>
                </talendToDbTypes>
                <dbToTalendTypes>
                    <dbType type="BIT">
                        <talendType type="id_Boolean" default="true"/>
                    </dbType>
                    <dbType type="BOOLEAN">
                        <talendType type="id_Boolean" default="true"/>
                    </dbType>
                    <dbType type="COUNTER">
                        <talendType type="id_Integer" default="true"/>
                    </dbType>
                    <dbType type="DATE">
                        <talendType type="id_Date" default="true"/>
                    </dbType>
                    <dbType type="DECIMAL">
                        <talendType type="id_Double"/>
                        <talendType type="id_BigDecimal" default="true"/>
                        <talendType type="id_Float"/>
                    </dbType>
                    <dbType type="DOUBLE">
                        <talendType type="id_Double" default="true"/>
                        <talendType type="id_BigDecimal"/>
                        <talendType type="id_Float"/>
                    </dbType>
                    <dbType type="FLOAT">
                        <talendType type="id_Float" default="true"/>
                        <talendType type="id_BigDecimal"/>
                        <talendType type="id_Double"/>
                    </dbType>
                    <dbType type="INTEGER">
                        <talendType type="id_Integer" default="true"/>
                        <talendType type="id_Short"/>
                        <talendType type="id_Long"/>
                        <talendType type="id_Byte"/>
                    </dbType>
                    <dbType type="NUMERIC">
                        <talendType type="id_Float"/>
                        <talendType type="id_BigDecimal" default="true"/>
                        <talendType type="id_Double"/>
                    </dbType>
                    <dbType type="REAL">
                        <talendType type="id_Float" default="true"/>
                        <talendType type="id_BigDecimal"/>
                        <talendType type="id_Double"/>
                    </dbType>
                    <dbType type="SMALLINT">
                        <talendType type="id_Short" default="true"/>
                        <talendType type="id_Integer"/>
                        <talendType type="id_Long"/>
                        <talendType type="id_Byte"/>
                    </dbType>
                    <dbType type="TINYINT">
                        <talendType type="id_Byte" default="true"/>
                        <talendType type="id_Integer"/>
                        <talendType type="id_Short"/>
                        <talendType type="id_Long"/>
                    </dbType>
                    <dbType type="TIME">
                        <talendType type="id_Date" default="true"/>
                    </dbType>
                    <dbType type="TIMESTAMP">
                        <talendType type="id_Date" default="true"/>
                    </dbType>
                    <dbType type="VARCHAR">
                        <talendType type="id_String" default="true"/>
                    </dbType>
                    <dbType type="DATETIME">
                        <talendType type="id_Date" default="true"/>
                    </dbType>
                    <dbType type="MEMO">
                        <talendType type="id_String" default="true"/>
                    </dbType>
                    <dbType type="YESNO">
                        <talendType type="id_Boolean" default="true"/>
                    </dbType>
                </dbToTalendTypes>
            </language>
        </dbms>
    </mapping>