返回首页

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

更新日期:2024年09月11日

com.gbasedbt.lang.IntervalYM 类允许您操纵年-月间隔。
IntervalYM 构造函数
缺省的构造函数定义如下:
public IntervalYM() throws SQLException
如果抛出异常,则请使用该构造函数的第二个版本来显示本地化的错误消息:
public IntervalYM(Connection conn) throws SQLException
请使用下列构造函数来从特定的输入值创建年-月间隔:

两个时间戳,返回等于 Timestamp1 - Timestamp2 的 IntervalYM 值:
public IntervalYM(Timestamp t1, Timestamp t2) throws
SQLException
public IntervalYM (Timestamp t1, Timestamp t2, Connection
conn) throws SQLException
第二个版本允许您支持本地化的错误消息。

年和月值(将大型月份值转换为年):
public IntervalYM(int years, int months) throws
SQLException

public IntervalYM(int years, int months,
Connection conn) throws SQLException

第二个版本允许您支持本地化的错误消息。

月份值和编码的限定符:
public IntervalYM(int months, short qualifier,
Connection conn) throws SQLException
要指定限定符,可使用 Interval 方法 中描述的 getQualifier() 方法。此构造函数支持
本地化的错误消息。

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

字符串:
public IntervalYM(String string) throws SQLException
public IntervalYM(String string, Connection conn)
throws
SQLException

第二个版本允许您支持本地化的错误消息。

字符串和限定符:
public IntervalYM(String string, short qualifier,
Connection conn) throws SQLException
要指定限定符,可使用 Interval 方法 中描述的 getQualifier() 方法。此构造函数支持
本地化的错误消息。

字符和限定符信息:
public IntervalYM(String string, int length,
byte startCode, byte endCode) throws
SQLException

public IntervalYM(String string, int length,
byte startCode, byte endCode, Connection
conn) throws
SQLException
第二个版本允许您支持本地化的错误消息。

IntervalYM 方法
下列方法允许您操纵年-月间隔。(您还可使用前面描述的 Interval 方法。)您可
以 IntervalYM 方法执行的某些任务包括下列:

比较两个间隔:
boolean equals(Object other)
boolean greaterThan(IntervalYM other)
boolean lessThan(IntervalYM other)

从其设置间隔的值:

字符串:
void fromString(String other)
void set(String string)


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

年和月值(将大型月值转换为年):
void set(int years, int months)


两个时间戳:
void set(Timestamp t1, Timestamp t2)

设置间隔的限定符:

从长度、开始代码和结束代码:
void setQualifier(int length, byte startcode, byte
endcode)

使用现有的限定符:
void setQualifier(short qualifier)

取得间隔中的月数:
long getMonths()

以 yyyy-mm 格式来创建间隔的字符串表示:
String toString()
字段的显示依赖于限定符。以空格替代开头的零。

GBASE_BIND
 结构说明
该结构用于语句输入(发送给服务器的数据值)和输出(从服务器返回的
结果值)
。对于输入,它与gbase_stmt_bind_param()一起使用,用于将参数数
据值绑定到缓冲区上,以供gbase_stmt_execute()使用。对于输出,它与
gbase_stmt_bind_result()一起使用,用于绑定结果缓冲区,以便用于用
gbase_stmt_fetch()以获取行。
GBASE_BIND 结构包含下述供应用程序使用的成员。每个成员用于输入和输
出,但在某些时候,也能用于不同的目的,具体情况取决于数据传输的方向。
 结构成员



GBase 8a 程序员手册C API 篇
南大通用数据技术股份有限公司

- 51 -
名 称
类 型
描 述
buffer_type
enum_field_typ
es
缓冲的类型。
buffer
void *
指向缓冲区的指针。
buffer_length
unsigned long
缓冲区的实现大小,单位为字节。
length
unsigned long*
指向unsigned long 变量的指针,
该变量指明了存储在*buffer 中数
据的实际字节数。
is_null
gs_bool*
该成员指向gs_bool 变量,如果值
为NULL,该变量为“真”,如果值
为非NULL,该变量为“假”。
“is_null”是指向布尔类型的指
针,而不是布尔标量,以便能以下
述方式使用它:
1、如果数据值总是
NULL,使用
GBASE_TYPE_NULL 绑
定列。
2、如果数据值总是
NOT NULL,设置
is_null =
(gs_bool*) 0。
3、在所有其他情况
下,应将is_null 设
置为gs_bool 变量的
地址,并在各次执行
之间恰当地更改变量
的值,以指明数据值
是NULL 或NOT NULL。

is_unsigned
gs_bool
对于无符号类型,应将
“is_unsigned”设置为“真”,

于带符号类型,应将其设置为
“假”。
error
gs_bool
对于输出,该成员用于通报数据截

GBase 8a 程序员手册C API 篇


- 52 -

南大通用数据技术股份有限公司
名 称
类 型
描 述
短错误。必须通过调用带有
GBASE_REPORT_DATA_TRUNCATION
选项的gbase_options(),启用截
短通报功能。允许该功能后,
gbase_stmt_fetch()返回
GBASE_DATA_TRUNCATED,而且对于
出现截短情况的参数,在
GBASE_BIND 结构中,错误标志为
“真”。截短指明丢失了符号或有
效位数,或字符串过长以至于无法
容纳在1列中。

可以使用 onstat -l 命令显示有关物理日志、逻辑日志和临时逻辑日志的信息。
语法:

示例输出
图: onstat -l 命令输出

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 639 -


物理日志文件的输出描述
显示的第一部部分描述了物理日志配置:
buffer
是物理日志缓冲区的数量
bufused
是已使用的物理日志缓冲区页数
bufsize
是每个物理日志缓冲区的大小(以页为单位)
numpages
是写入物理日志的页数
numwrits
是对磁盘的写入数
pages/io
计算方法是 numpages/numwrits
该值指示正在缓存的物理日志写入的效率
phybegin
是日志开始处的物理页号
physize
是物理日志的大小(以页为单位)
phypos
是日志中发生下一个日志记录写入的当前数量

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 640 -

phyused
是日志中已使用页的数量
%used
是已使用页的百分比
onstat -l 命令输出的第二部分描述逻辑日志配置:
buffer
是逻辑日志缓冲区数
bufused
是逻辑日志缓冲区呢已使用的页数
bufsize
每个逻辑日志缓冲区的大小(以页为单位)
numrecs
是已写入记录的数量
numpages
是已写入页的数量
numwrits
是对逻辑日志的写入数
recs/pages
计算方法是 numrecs/numpages
您不能影响该值。不同类型的操作生成不同类型(和大小)的记录
pages/io
计算方法是 numpages/numwrits
可以通过更改逻辑日志缓冲区大小
(由 ONCONFIG 文件中的 LOGBUFF 指定)
或通
过更改数据库的日志记录方式(从已缓冲到未缓冲,反之亦然)来影响此值
以下字段将对每个逻辑日志文件重复:
address
是日志文件描述符的地址
number
是逻辑日志文件的日志标识号
日志标识号可能是无序的,因为数据库服务器或管理员都可以直接插入日志文件
flags
提供每个日志的状态,如下所示:
A
新添加的(可以使用)
B

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 641 -

已备份
C
当前的逻辑日志文件
D
标记为已删除
要删除日志文件并释放其空间以再利用,
那么必须对所有存储空间执行 0 级备份
F
可用的,可以使用
L
最新的 checkpoint 记录
U
已使用的
uniqid
是日志的唯一 ID 号
begin
是日志文件的起始页
size
是日志的大小(以页为单位)
used
是已使用页数量
%used
是已使用页的百分比
active
是活动逻辑日志的数量
total
是逻辑日志的总数
临时逻辑日志文件的输出描述
数据库服务器在热恢复过程中使用 temporary logical logs ,因为永久日志在那时是不可用
的。以下字段将对每个临时逻辑日志文件重复:
address
是日志文件描述符的地址
number
是逻辑日志文件的日志标识号
flags
提供每个日志的状态,如下所示:

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 642 -

B
已备份
C
当前的逻辑日志文件
F
可用的,可以使用
U
已使用的
uniqid
是日志的唯一 ID 号
begin
是日志文件的起始页
size
是日志的大小(以页为单位)
used
是已使用页的数量
%used
是已使用页的百分比
active
是活动临时逻辑日志的数量