Genomdrivande av schema
Azure Databricks validerar datakvaliteten genom att framtvinga schema vid skrivning.
Not
I den här artikeln beskrivs standardbeteendet för tabeller i Azure Databricks, som backas upp av Delta Lake. Schemaframtvingande gäller inte för tabeller som backas upp av externa data.
Schema-tillämpning för infogningsoperationer
Azure Databricks tillämpar följande regler när data infogas i en tabell:
- Alla infogade kolumner måste finnas i måltabellen.
- Alla kolumndatatyper måste matcha kolumndatatyperna i måltabellen.
Not
Azure Databricks försöker på ett säkert sätt omvandla kolumndatatyper så att de matchar måltabellen.
Schemaverifiering vid MERGE
-åtgärder
Azure Databricks tillämpar följande regler när du infogar eller uppdaterar data som en del av en MERGE
åtgärd:
- Om datatypen i källutsatsen inte matchar målkolumnen försöker
MERGE
på ett säkert sätt omvandla kolumndatatyper så att de matchar måltabellen. - Kolumnerna som är mål för en
UPDATE
ellerINSERT
åtgärd måste finnas i måltabellen. - När du använder
INSERT *
ellerUPDATE SET *
syntax:- Kolumner i källdatauppsättningen som inte finns i måltabellen ignoreras.
- Källdatauppsättningen måste ha alla kolumner som finns i måltabellen.
Ändra ett tabellschema
Du kan uppdatera schemat för en tabell med antingen explicita ALTER TABLE
-instruktioner eller automatisk schemautveckling. Se Uppdatera Delta Lake-tabellschemat.
Schemautvecklingen har särskild semantik för MERGE
operationer. Se Automatisk schemautveckling för Delta Lake-sammanslagning.