You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从MS Parallel Data Warehouse中提取列的默认值?

PDW提取列默认值的实现方法

MS Parallel Data Warehouse 不支持object_definition函数,可通过关联sys.default_constraints系统视图实现需求,该视图的definition字段直接存储了默认约束的定义文本,无需调用不兼容的函数。

单字段默认值查询代码

SELECT dc.definition AS default_value_definition
FROM sys.columns c
INNER JOIN sys.default_constraints dc 
    ON c.default_object_id = dc.object_id
INNER JOIN sys.tables t 
    ON c.object_id = t.object_id
INNER JOIN sys.schemas s 
    ON t.schema_id = s.schema_id
WHERE 
    c.name = 'col1' -- 替换为实际查询的列名
    AND t.name = 'tablename' -- 替换为实际查询的表名
    AND s.name = 'dbo' -- 替换为表所属的schema名称

全表所有列默认值查询代码

如果需要查询指定表全部列的默认值,去掉列名过滤条件即可:

SELECT 
    c.name AS column_name,
    dc.definition AS default_value_definition
FROM sys.columns c
LEFT JOIN sys.default_constraints dc 
    ON c.default_object_id = dc.object_id
INNER JOIN sys.tables t 
    ON c.object_id = t.object_id
INNER JOIN sys.schemas s 
    ON t.schema_id = s.schema_id
WHERE 
    t.name = 'tablename'
    AND s.name = 'dbo'

内容的提问来源于stack exchange,提问作者Ondřej Mazanec

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 12:06:00