您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

syscomments

说明

每个视图、规则、缺省值、触发器、表约束、分区、过程、计算列、基于函数的索引键和其它形式的编译对象在 syscomments 中都有对应的条目。 text 列包含初始定义语句。 如果 text 列的长度大于 255 个字节,条目

将跨行显示。 每个对象最多可占据 65,025 行。

它还存储计算列、基于函数的索引或分区定义的有关文本。例如,为域分区存储“values <= value_list”。

create service 命令在 syscomments 中存储文本,因为它使用 create procedure基础结构。

id

该文本适用的对象 ID。

number

对过程进行分组时的子过程数(0 表示非过程条目)。

colid

此过程的注释的列计数器的低位部分。 值介于 0 到 32767 之间。如果在这么多行中无法容纳所有的过程文本,则该计数器与 colid2 一起发生作用。

texttype

指示注释类型。 其值包括:

  • 0 — 系统提供的注释,用于视图、规则、缺省值、触发器和过程

  • 1 — 用户提供的注释,用于添加对对象或列进行说明的条目

    language

    保留

    text

    SQL 定义语句的实际文本。

    colid2

    此过程的注释的列计数器的高位部分。 值介于 0 到 32767 之间。只有对于注释文本超过 32,768 行的过程,值才为 0。

    status

    指出对象状态的位:

  • 0x1 — SYSCOM_TEXT_HIDDEN 表示文本是隐藏的

  • 0x2 — 保留为内部使用

  • 0x4 — SYSCOM_QUOTED_ID_ON 表示创建对象时启用带引号的标识符

  • 0x8 — SYSCOM_SHARED_INLINE_DEF 表示该文本用于可共享行内缺省值

    version

    对用于加密此行的隐藏文本的算法进行编码的加密版本。 可以是以下各项之一:

  • Null — 隐藏文本没有加密

  • 1 —(缺省值)在 Adaptive Server 15.0 和更低版本中使用的 Adaptive Server

    混淆算法

  • 2 —(可选)高级加密标准 (“AES”) 强加密

    partitionid

    分区 ID。 否则为空。

    encrkeyid

    来自当前数据库的 sysencryptkeys 中的密钥对象的加密密钥 ID,当 version 的值为 2 时,Adaptive Server 用它来加密该对象的隐藏文本。否则,Adaptive Server 使用空值来充当 encrkeyid。

    注释

    不要将定义语句从 syscomments 的 text 列中删除。 Adaptive Server 升级进程需要使用这些语句。 要加密定义语句,请执行系统过程 sp_hidetext。 要查看是否已删除在 11.5 版或更高版本中创建的语句,请执行 sp_checksource。 如果删除了该语句,则必须重新创建原先创建该

    语句的对象,或者重新安装原先创建该对象的应用程序,这样就会重新创建该语句。

    要防止对数据库对象的文本进行未经授权的访问,可施加限制,仅限对

    象所有者和系统管理员拥有 syscomments 表中 text 列的 select 权限。 这种

    限制既适用于通过存储过程进行的访问,也适用于通过 select 语句进行

    的直接访问。在已评估的配置中运行 Adaptive Server 时,必须施加这种

    限制。 要施加这种限制,系统安全员必须用系统过程 sp_configure 重新

    设置称为 select on syscomments.text 的参数。

    索引

  • id、number、colid2、colid、 texttype 上的唯一聚簇索引