我想从数据库中查询计算列的定义,但是找不到似乎可以执行我想要的命令的命令…
例如,如果某列定义为:
CallDT AS (CONVERT([datetime],dateadd(second,[StartDate],'01/01/1970'),(0)))
在DDL中,我想在数据库上运行命令以检索该“ AS”语句,以便可以将其与其期望值进行比较。(我正在开发一个SQL解析器,它将现有数据库与DDL定义进行比较)…
这可能吗?
这适用于SQL Server 2008
create table dbo.Foo ( StartDate int, CallDT AS (CONVERT([datetime],dateadd(second,[StartDate],'01/01/1970'),(0))) ) select definition from sys.computed_columns where name='CallDT' and object_id=object_id('dbo.Foo')