我通过运行这个查询来备份我的所有视图,并将结果存储在一个表中:
select
TABLE_CATALOG as DBName
, TABLE_NAME as ViewName
, VIEW_DEFINITION as ViewDef
, datalength(VIEW_DEFINITION) as [Length]
, GETDATE() as ImportDate
from INFORMATION_SCHEMA.VIEWS
order by DBName, ViewName
但是 VIEW_DEFINITION 列的数据类型设置为 nvarchar(4000) 并且我的一些视图比这长得多 - 所以它们被截断了。
我可以以某种方式将 VIEW_DEFINITION 列的数据类型更改为 varchar(max) 吗?