sys.syscomments (Transact-SQL)

包含数据库中的每个视图、规则、默认值、触发器、CHECK 约束、DEFAULT 约束和存储过程的条目。 text 列包含原始的 SQL 定义语句。

重要说明重要提示

后续版本的 Microsoft SQL Server 将删除该功能。请不要在新的开发工作中使用该功能,并尽快修改当前还在使用该功能的应用程序。 我们建议您改用 sys.sql_modules。有关详细信息,请参阅 sys.sql_modules (Transact-SQL)

适用范围:SQL Server(SQL Server 2008 到当前版本)。

列名

数据类型

说明

id

int

该文本适用的对象 ID。

number

smallint

如果进行分组,则为过程分组内的号码。

0 = 项不是过程。

colid

smallint

超过 4,000 个字符的对象定义的行序列号。

status

smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

ctext

varbinary(8000)

SQL 定义语句的原始字节。

texttype

smallint

0 = 用户提供的注释

1 = 系统提供的注释

4 = 加密的注释

language

smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

encrypted

bit

指示过程定义是否已经过模糊处理。

0 = 未经模糊处理

1 = 已经模糊处理

重要说明重要提示

若要对存储过程定义进行模糊处理,请使用带 ENCRYPTION 关键字的 CREATE PROCEDURE 语句。

compressed

bit

总是返回 0。 这表明过程已压缩。

text

nvarchar(4000)

SQL 定义语句的实际文本。

解码后的表达式的语义等同于原始文本,但不保证语法正确无误。 例如,解码后的表达式中删除了空格。

此 SQL Server 2000 兼容视图从当前 SQL Server 结构中获取信息,可能会返回比 nvarchar(4000) 定义更多的字符。 sp_help 返回 nvarchar(4000) 作为文本列的数据类型。 在使用 syscomments 时,请考虑使用 nvarchar(max)。 对于新的开发工作,请不要使用 syscomments。

请参阅

参考

将系统表映射到系统视图 (Transact-SQL)

兼容性视图 (Transact-SQL)