En-têtes d'expression
Dernière mise à jour : 27/10/2026Utilisez des en-têtes dans les expressions de colonne pour conserver les métadonnées de modification telles qu'un nom d'opération ou la position du flux source.
Les en-têtes Q_H_ sont disponibles dans les tâches de dépôt temporaire gérées par SaaS, de dépôt temporaire dans un lac et de réplication. Insérez un en-tête à partir de la liste En-têtes de l'éditeur lorsque Création d'expressions. Le tableau ci-dessous identifie l'applicabilité et les valeurs des points de terminaison sources pendant l'opération Chargement complet et le traitement des modifications.
En-têtes de tous les points de terminaison sources
| En-tête et type de données | Valeur lors du traitement des modifications | Valeur lors d'une opération Chargement complet |
|---|---|---|
Q_H_CHANGE_SEQ
|
Séquence de modifications croissante monotone dans les tables de modifications de la tâche. Combine un horodatage avec un compteur de modifications préfixé de zéro pour organiser les modifications au sein d'une tâche. | Vide |
Q_H_STREAM_POSITION
|
Position dans le flux de modifications source, généralement un SCN ou un LSN. Identifie un emplacement de flux source et non un horodatage ou une séquence comparable entre les tâches. | Chaîne vide. |
Q_H_TIMESTAMP
|
Horodatage de l'opération de modification. Il s'agit d'un horodatage d'opération et non de l'horodatage de validation (commit) de la transaction. | Horodatage actuel. |
Q_H_TRANSACTION_ID
|
Transaction contenant la modification, représentée par un ID de transaction hexadécimal de 128 bits. Le caractère unique de l'ID n'est pas garanti. | Vide |
Q_H_COMMIT_TIMESTAMP
|
Horodatage de validation (commit) de la transaction source tel que représenté par l'environnement d'exécution du traitement. Distinct de l'heure du serveur de base de données source dans Q_H_DB_COMMIT_TIMESTAMP. |
Horodatage actuel. |
Q_H_DB_COMMIT_TIMESTAMP
|
Horodatage de validation (commit) de la transaction source selon l'heure du serveur de base de données source. | NULL |
Q_H_OPERATION
|
INSERT, UPDATE ou DELETE. |
INSERT. |
La séquence de modifications combine un horodatage formaté comme YYYYMMDDHHmmSShh avec un compteur de modifications de 19 chiffres, préfixées de zéro. Les champs d'horodatage sont l'année, le mois, le jour, l'heure, la minute, la seconde et les centièmes de seconde. La partie horodatage peut se répéter à mesure que le compteur augmente. La capacité STRING(50) déclarée n'est pas la longueur du format de séquence.
Ne vous fiez pas à Q_H_TRANSACTION_ID comme clé unique. Utilisez Q_H_CHANGE_SEQ pour l'ordonnancement des modifications au niveau des tâches au lieu de comparer uniquement les horodatages.
En-têtes spécifiques à la source
Les restrictions de source suivantes s'appliquent aux points de terminaison nommés. Elles n'impliquent pas le support d'autres variantes de SQL Server ou d'autres sources de fichiers.
| En-tête et type de données | Points de terminaison sources | Valeur lors du traitement des modifications | Valeur lors d'une opération Chargement complet |
|---|---|---|---|
Q_H_USER
|
Microsoft SQL Server ; Microsoft Azure SQL Managed Instance ; Amazon RDS for SQL Server ; IBM Informix ; IBM DB2 for z/OS ; IBM DB2 for LUW ; Oracle ; File ; SAP Sybase ASE. | Utilisateur.trice qui a effectué la modification de la source. | Vide |
Q_H_JOB_NAME
|
IBM DB2 for iSeries uniquement. | Job qui a effectué la modification de la source. | Vide |
Q_H_PROGRAM_NAME
|
IBM DB2 for iSeries uniquement. | Programme qui a effectué la modification de la source. | Vide |
Q_H_XACT_ID
|
Microsoft SQL Server ; Microsoft Azure SQL Managed Instance ; Amazon RDS for SQL Server. | Identifiant de l'heure de transaction : le LSN du premier enregistrement de la dernière transaction distribuée du serveur. Tous les enregistrements de la transaction partagent cet ID. Cela est différent de Q_H_TRANSACTION_ID, qui est obtenu à partir du journal des transactions physiques. |
Vide |
Utilisation des métadonnées d'opération
Ajoutez une colonne et insérez Q_H_OPERATION pour enregistrer l'opération source. Lors d'une opération Chargement complet, sa valeur est INSERT. Lors du traitement des modifications, une mise à jour a la valeur UPDATE.
L'en-tête d'opération décrit l'opération ; il ne modifie pas la gestion de la suppression de la cible. Pour renvoyer des indicateurs personnalisés pour les opérations de la source, consultez $OPERATION_INDICATOR dans Fonctions d'expression.
Colonnes d'en-tête de dépôt temporaire de flux
Les tâches de transformation de flux utilisent des colonnes sources telles que hdr__kafka_partition, hdr__kinesis_offset ou hdr__file_name. Il ne s'agit pas d'alias pour les en-têtes Q_H_. Sélectionnez les en-têtes de dépôt temporaire de flux dans Colonnes. Pour les listes spécifiques à la source, consultez Les tables de dépôt temporaire..