如何在 sql azure 数据仓库中添加检查约束?

Nei*_*l P 2 azure-sql-data-warehouse

我想向 azure数据仓库中的表添加检查约束。

我有以下脚本:

alter table [FactTbl_Test] add constraint Ck_Test_id check ([Test_Id] != 'Unknown')
Run Code Online (Sandbox Code Playgroud)

这会导致以下错误:

第 2 行解析错误,第 74 列:'check' 附近的语法不正确。

编辑:

如果在表声明中创建约束,也会出现相同的错误。

SQL*_*joe 7

Azure SQL 数据仓库目前不支持此和一般约束。有关完整列表,请参阅https://docs.microsoft.com/en-us/azure/sql-data-warehouse/sql-data-warehouse-tables-overview#unsupported-table-features

如果约束未在源头强制执行,或者如果您有多个源,则可以在 ETL 或 ELT 过程中实施。对于小数据集,ETL 可能效果更好。对于大型数据集,您可能会通过 ELT-L 获得更好的性能。就像在提取然后加载到临时表(堆很快)一样,执行检查/清理然后加载到最终表。