Indiquer des noms d'objet dans l'entrée Oracle GoldenGate

Les règles suivantes s'appliquent lors de la spécification de noms d'objet dans des fichiers de paramètres (tels que dans les instructions TABLE et MAP), des fonctions de conversion de colonne, des commandes et d'autres entrées.

Spécification des noms de chemin du système de fichiers dans les fichiers de paramètres sur les systèmes Windows

Sur les systèmes Windows, si le nom d'un répertoire dans un nom de chemin de système de fichiers commence par un nombre, le chemin doit être spécifié avec des barres obliques, et non des barres obliques, lors de la liste de ce chemin dans l'entrée Oracle GoldenGate, telles que les fichiers de paramètres ou les commandes. Cette exigence empêche Oracle GoldenGate d'interpréter le nom comme une séquence d'échappement octale. Par exemple, les chemins suivants contiennent un répertoire nommé \2023 qui sera interprété comme la séquence octale \202 :

C:\deployments\ea
C:\deployments\north\ea
C:\deployments\north\2023\ea

Le chemin précédent peut être utilisé avec des barres obliques comme suit :

C:/deployments/ea
C:/deployments/north/ea

Pour plus d'informations, voir Prise en charge des séquences d'échappement.

Spécification de noms contenant des barres obliques

Si un nom de table contient une barre oblique (/) dans une partie de son nom, ce composant de nom doit être placé entre guillemets, sauf si le nom de l'objet provient d'une plate-forme IBM i . Voici des exemples :

"c/d"
"/a".b
a."b/"

Si le nom contient une barre oblique qui n'est pas placée entre guillemets, Oracle GoldenGate le traite comme un nom provenant de la plate-forme IBM i (à partir d'un fichier DB2 pour la base de données i). La barre oblique du nom est interprétée comme un caractère de séparation.

Indiquer des noms d'objet de base de données sensibles à la casse

Oracle GoldenGate prend en charge les noms sensibles à la casse. Suivez ces règles lorsque vous spécifiez des objets sensibles à la casse.

Le Table 9-17 présente la prise en charge de la sensibilité à la casse dans les noms d'objet, par base de données prise en charge. Pour plus d'informations sur ce type de support, reportez-vous à la documentation de la base de données.

Tableau 17 Sensibilité à la casse des noms d'objet par base de données

Base de données Nécessite des guillemets pour appliquer la distinction majuscules/minuscules ? Nom d'objet sans guillemets Nom d'objet entre guillemets
DB2 Oui. Différencie les majuscules/minuscules et les minuscules à l'aide de guillemets. Ne tenant pas compte de la casse, stocke les majuscules Sensible à la casse, stocke les données en majuscules/minuscules

MySQL

(base de données sensible à la casse)

Non

  • Toujours sensible à la casse, stocke en majuscules/minuscules

  • Les noms des colonnes, des déclencheurs et des procédures ne tiennent pas compte de la casse.

Aucun effet Aucun effet
Oracle AI Database Oui. Différencie les majuscules/minuscules et les minuscules à l'aide de guillemets. Ne tenant pas compte de la casse, stocke les majuscules Sensible à la casse, stocke les données en majuscules/minuscules

SQL Server

(Base de données créée en respectant la casse)

Non

Toujours sensible à la casse, stocke en majuscules/minuscules

Aucun effet

Aucun effet

SQL Server

(Base de données créée sans tenir compte de la casse)

Non

Toujours sans distinction majuscules/minuscules, stocke en majuscules/minuscules

Aucun effet Aucun effet
Teradata

Non

Toujours sans distinction majuscules/minuscules, stocke en majuscules/minuscules

Aucun effet Aucun effet

Remarque : pour toutes les bases de données prises en charge, les mots de passe sont toujours traités comme sensibles à la casse, que le nom d'objet associé soit entre guillemets ou non.

Différencier les noms de colonne sensibles à la casse des littéraux

Par défaut, Oracle GoldenGate suit les règles SQL-92 pour la spécification des noms de colonne et des littéraux. Dans les fichiers de paramètres Oracle GoldenGate, les fonctions de conversion, les exits utilisateur et les commandes, les noms de colonne sensibles à la casse doivent être placés entre guillemets doubles si la base de données requiert des guillemets autour d'un nom pour prendre en charge la distinction majuscules/minuscules. Exemple :

"columnA"

Les noms de colonne sensibles à la casse dans les bases de données qui ne nécessitent pas de guillemets pour appliquer la distinction majuscules/minuscules doivent être indiqués car ils sont stockés dans la base de données. Exemple :

ColumnA

Les littéraux doivent être placés entre apostrophes. Dans l'exemple suivant, Product_Code est un nom de colonne sensible à la casse dans une base de données Oracle AI Database et les autres chaînes sont des littéraux.

@CASE ("Product_Code", 'CAR', 'A car', 'TRUCK', 'A truck')