SQL Server中的syscomments表 解析
包含数据库中每个视图、规则、默认值、触发器、CHECK 约束、DEFAULT 约束和存储过程的项。text 列包含原始的 SQL 定义语句。
标签:syscomments表 杂谈 |
分类:SQLServer |
|||
列名 |
数据类型 |
说明 |
||
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 2008 对目录元数据中的 SQL 表达式进行解码和存储的方式不同于 SQL Server 2000。解码后的表达式的语义等同于原始文本,但是没有语法保证。例如,已解码的表达式中删除了空格。 |
if exists (select * from dbo.syscomments where id=object_id(N'[dbo].[P_XXXXX]'))
select c.text as sql语句, c.encrypted, convert(nchar(2), o.xtype) as 类型, datalength(c.text) as 长度 from dbo.syscomments c, dbo.sysobjects o where o.id = c.id and c.id = object_id(N'[dbo].[P_综合退费_合同号带值2]') order by c.number, c.colid option(robust plan)
QQ:67042248
天之道,利而不害;圣人之道,为而不争.