Comment puis-je résoudre le problème « ERREUR : la valeur nulle dans la colonne enfreint la contrainte interdisant les valeurs nulles » pour une tâche AWS DMS de chargement complet et de capture de données modifiées ?

Lecture de 2 minute(s)
0

J'utilise une tâche AWS Database Migration Service (AWS DMS) qui est à la fois une tâche de chargement complet et de capture de données modifiées (CDC). J'ai reçu le message d'erreur suivant : « ERREUR : la valeur nulle dans la colonne enfreint la contrainte interdisant les valeurs nulles. »

Résolution

Si votre tâche de migration comporte des colonnes d'objets volumineux (LOB), vous obtiendrez une entrée de journal de ce type :

« E : La commande n'a pas pu charger les données avec le code d'erreur de sortie 1. Sortie de commande : ERREUR : la valeur nulle dans la colonne « xyz » enfreint la contrainte interdisant les valeurs nulles »

Quand AWS DMS migre des colonnes LOB, toutes les données sont migrées vers votre table cible, à l'exception de la colonne LOB. AWS DMS insère également un enregistrement NULL dans la colonne LOB. AWS DMS met ensuite à jour les lignes de la table cible avec les données de la colonne LOB.

Si AWS DMS n'a pas créé la cible, vérifiez le langage de description des données cibles pour voir si un attribut NOT NULL est spécifié. S'il existe un attribut NOT NULL, mettez à jour la table pour supprimer la contrainte NOT NULL des types de données de la colonne LOB. Reprenez ensuite votre tâche AWS DMS.

Consultez la table suivante pour connaître le comportement des tâches AWS DMS pour les modes LOB et les phases de tâche :

Mode LOBChargement completCapture de données modifiées
Mode LOB completLa contrainte NOT NULL n'est pas autoriséeLa contrainte NOT NULL n'est pas autorisée
Mode LOB limitéLa contrainte NULL est autoriséeLa contrainte NOT NULL n'est pas autorisée

Informations connexes

Migration d'objets binaires volumineux (LOB)

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 7 mois
Aucun commentaire