返回首页

gbase数据、南大通用产品文档:GBase8sSYSTRIGBODY

更新日期:2024年09月11日

systrigbody 系统目录表包含触发器定义的 ASCII 文本和触发器的线性化代码。线性
化代码是以 ASCII 格式表示的二进制数据和代码。
要点: 数据库服务器使用存储在 systrigbody 中的线性化代码。一定不要改变包含
线性化代码的行的内容。
systrigbody 表具有以下列。
表 37. SYSTRIGBODY 表列描述

类型
解释
trigid
INTEGER
触发器的标识代码
datakey
CHAR(1)
指定数据类型的代码:A = 主体(触发操作)的
ASCII 文本B = 主体的线性化代码D = 页眉(触发器
定义)的英文文本H = 页眉的线性化代码S = 符号表
的线性化代码
seqno
INTEGER
此数据段的页号
data
CHAR(256)
英文文本或线性化代码

GBase 8s SQL 指南:参考
南大通用数据技术股份有限公司 - 70 -

类型
解释
collation
CHAR(32)
创建触发器时的排列顺序

trigid、datakey 和 seqno 列的组合索引只允许唯一值。

SQLDescribeParam 是一个 ODBC API,它返回查询参数的元数据。
在较早版本的 GBase 8s ODBC Driver 中,如果调用 API 来取得关于嵌入在另一例程内
的表达式值或参数的信息,SQLDescribeParam API 返回 SQL_UNKNOWN。对于
BOOLEAN、
LVARCHAR,
或由其他 UDR 中下列表达式返回的内置的非 opaque GBase
8s 数据类型,此限制不再适用:

二进制算术表达式
o
加(+)
o
减(-)
o
乘(*)
o
除(/)

关系运算符表达式
o
小于(<)
o
小于或等于(<=)
o
等于(=、==)
o
大于或等于(>=)
o
大于(>)
o
不等于(<>、!=)

下列字符串运算
o
串联(||)
o
MATCHES
o
LIKE

BETWEEN ... AND 条件表达式
例如,如果列 tab1.c1 是 INT 数据类型,则 SQLDescribeParam() 为下列查询的输入主
变量返回类型 int:
select c1, c2 from tab1 where ABS(c1) > ?;
来自表达式另一侧的 UDR 可以是列表达式或内置的例程,但它不可以是用户定义的例
程。在较早的版本中,在下列情况下,SQLDescribeParam API 为嵌入在另一过程中的表
达式值和参数返回 SQL_UNKNOWN:
l
表达式的另一侧的值为用户定义的例程。
l
同一表达式的另一运算对象是用户定义的例程。

GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 28 -

l
表达式的任何运算对象的数据类型不是 BOOLEAN、LVARCHAR 或内置的非
opaque 数据类型。

监视以下由动态添加的日志文件触发的事件警报(见下表)。 当每个警报被触发,就向消
息日志写入一条消息。有关更多信息,请参阅《GBase
8s 管理员参考》中有关事件警报和
配置参数的章节。
您可以包含 onparams 命令以在您的事件类标识 27(日志文件必需的)的警报脚本中添
加日志文件。您的脚本还可运行 onstat
-d 命令来检查有否足够空间,并对具有足够空
间的位置执行 onparams a -i。必须使用 -i 选项在当前日志文件之后添加新的日志。

表 1. 动态添加的日志文件的事件警报
类标

严重性
类消息
消息
26
3
动态添加的日志文
件 log_number
当数据库服务器动态添加日志文件时显示该消息。
动态地将日志文件 log_number 添加到数据库
空间 dbspace_number。
27
4
需要日志文件
当 DYNAMIC_LOGS 设置为 1 且数据库服务器等待
您添加日志文件时,显示该消息。
警报:最旧的逻辑日志 log_number 包含来自
打开的事务 transaction_address 的记录。逻
辑日志记录将保持阻塞状态,直到添加了日志文
件为止。如下所示,使用 onparams -a 命令
和 -i(插入)选项添加日志文件:onparams -a
-d dbspace -ssize-i
然后尽快完成该事务。
28
4
没有可用于日志文
件的空间
警报:因为最旧的逻辑日志 log_number 包含来
自 transaction_address 打开事务的记录,那么
服务器将尝试动态添加日志文件。但没有可用的空
间。添加数据库空间或块,然后尽快完成该事务。

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 312 -
下表显示数据库服务器对于 DYNAMIC_LOGS 配置参数的每个设置执行的操作。
表 2. DYNAMIC_LOGS 设置
DYNAMIC_
LOGS
含义
事件警报 等待添加日

动态日志添加
2(缺省值) 允许自动分配新日志文件,从而
防止打开的事务挂起系统。
是(26、
28)


1
允许手动添加新日志文件。
是 (27)


0
不分配日志文件,但发出以下有
关打开的事务的消息:
警告: 最旧的逻辑日志文
件 log_number 包含来自打开
事务 transaction_address 的
记录,但是动态日志功能已关闭。