Datalake 表的信息约束

约束与表相关联,作为表创建过程的一部分进行定义(使用 CREATE DATALAKE TABLE 语句),或在表创建后添加到表定义中(使用 ALTER DATALAKE TABLE 语句)。

还可以使用 ALTER DATALAKE 表语句修改约束。 在大多数情况下,可以随时删除现有约束;这一操作不会影响表的结构或数据。

与 Datalake 表相关的约束仅被视为信息约束;这些约束是通过指定 NOT ENFORCED 子句创建的。 信息约束是一种约束属性,可被 SQL 编译器用于改进数据访问。 信息约束不用于额外的数据验证。 它们仅用于提高查询性能。

重要提示: 由于这些约束并不强制执行,因此如果表数据违反了信息约束,将不会返回错误,而错误结果可能会因此出现。 在使用信息约束时,如果数据来自具有类似(但已执行)约束的数据库系统,则必须使用提取、转换和加载(ETL)工具或逻辑,确保数据在 Db2® 之外遵守约束定义。

有关约束的更多信息,请参阅约束。 有关使用信息约束的性能优势的更多信息,请参阅 Db2 Big SQL 中的通过使用信息约束提高性能。 前文涉及 Big SQL ,但也适用于 Db2 对 Datalake 表的使用。