Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Databricks valide la qualité des données en appliquant le schéma en écriture.
Note
Cet article décrit le comportement par défaut des tables sur Azure Databricks, qui sont soutenues par Delta Lake. L’application du schéma ne s’applique pas aux tables sauvegardées par des données externes.
Application du schéma pour les opérations d’insertion
Azure Databricks applique les règles suivantes lors de l’insertion de données dans une table :
- Toutes les colonnes insérées doivent exister dans la table cible.
- Tous les types de données de colonne doivent correspondre aux types de données de colonne dans la table cible.
Note
Azure Databricks tente de convertir en toute sécurité les types de données de colonne pour qu’ils correspondent à la table cible.
Validation du schéma pendant les MERGE opérations
Azure Databricks applique les règles suivantes lors de l’insertion ou de la mise à jour de données dans le cadre d’une MERGE opération :
- Si le type de données de l’instruction source ne correspond pas à la colonne cible,
MERGEtente de convertir en toute sécurité les types de données de colonne pour qu’ils correspondent à la table cible. - Les colonnes qui sont la cible d'une
UPDATEouINSERTaction doivent exister dans la table cible. - Lors de l’utilisation de la syntaxe
INSERT *ouUPDATE SET *:- Les colonnes du jeu de données source non présentes dans la table cible sont ignorées.
- Le jeu de données source doit avoir toutes les colonnes présentes dans la table cible.
Modifier un schéma de table
Vous pouvez mettre à jour le schéma d’une table à l’aide d’instructions explicites ALTER TABLE ou de l’évolution automatique du schéma. Consultez Mettre à jour un schéma de table Delta Lake.
L’évolution du schéma a une sémantique spéciale pour les MERGE opérations. Consultez Évolution automatique du schéma pour la fusion Delta Lake.