返回首页

gbase数据、南大通用产品文档:GBase8s索引管理

更新日期:2024年09月11日

数据库中的索引使可以快速找到表或索引视图中的特定信息。

ifx_lo_specget_def_open_flags() 函数从 LO-specification 结构取得智能大对象的缺省
的打开标志。

语法
mint ifx_lo_specget_def_open_flags(LO_spec)

ifx_lo_create_spec_t *LO_spec;
LO_spec
指向从其取得缺省的打开标志的 LO-specification 结构的指针。
用法
可使用此函数从 LO-specification 结构取得缺省的打开标志。可以 ifx_lo_stat_cspec()
使用它来取得缺省的打开标志,当创建现有的智能大对象时,设置了该标志。


GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 789 -
返回代码
>=0
函数成功。返回的整数存储缺省的打开标志的值。
-1
函数不成功。

URI 数据格式:其数据为多行文本,行与行间以一对回车符和换行符组合(“\r\n”)
分隔,内容分作三部分:
1.
第一部分:首行的URI
协议名称 "://" 认证信息目录 文件名 [ "?"查询参数 ] [ "#" 书签 ]
协议名称包含file、http、ftp 等协议,认证信息目录仅支持绝对URI 地址,不
支持相对地址。
2.
第二部分:字段列表,其基本形式为“字段名:字段值”
为了保证数据一致性,关于数据校验的定义有:

Content-Length 用于指出数据的大小,格式为十进制数字符串,
Content-Length = "Content-Length" ":" 1*DIGIT
至少一个数字,例如:Content-Length: 3495
Last-Modified 指出数据最后修改的日期和时间。

Last-Modified = "Last-Modified" ":" RFC 1123 HTTP-date
例如:Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT

MD5 校验。
Content-MD5 = "Content-MD5" ":" md5-digest
md5-digest =
Content-Length、Last-Modified 和Content-MD5 都是可选项,如果存在,则应用程
序和GBase UP 在读取数据时,就应该检查实际数据的大小是否与描述字段相符,
发现不同则表示数据的一致性被破坏,如果不存在,则不进行一致性检查。
为了方便GBase UP 读取非结构化数据并正确地进行解析,关于数据格式说明的字
段有:

Content-Type 标识媒体类型,语法

Content-Type = "Content-Type" ":" media-type

media-type = type "/" subtype( ";" " charset" "= " charset))

GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 935

type = token

subtype = token

charset = token
例如:
Content-Type: text/html; charset=ISO-8859-4
Content-Encoding 是对Content-Type 中media-type 的修饰符。
当存在时,它的值指出数据区是否进行压缩,一般仅在数据区为普通文本时出现。

Content-Encoding = "Content-Encoding" ":" "gzip"
例如:
Content-Encoding: gzip
GBase UP 会根据Content-Type 媒体类型启动对应的转换插件对数据文件进行转换
输出。
3.
第三部分:显式结束标志
一个空行,用于表示URI 字段数据结束。
其中第一部分和第三部分是URI 的必选项,第二部分的5 个选项都是可选项。

说明
URI 是统一资源标识符(Uniform Resource Identifier)的简称,用于唯一标识一个资源,包含
互联网远程资源和本地资源,具体语法规范由RFC 3986 定义。
URI 数据标准格式中回车换行符”\r\n”(0x0D 0x0A)用于标识行与行的分隔,但是在一些条件
限制下实际插入了
“\\r\\n” (0x5C 0x72 0x5C 0x6E)。
本版本中GBase server 在URI 解析
时兼容了“\\r\\n”。
示例
示例1:
INSERT INTO fturi VALUES ('file:///tmp/fulltxt/subdirs_28323/e51029f0-e893-483
6-a504-6d67804a6a0e\r\nContent-Length:5571\r\nLast-Modified:Thu, 18 Oct 2012 1
1:21:21 GMT\r\nContent-MD5:ce0690d74cad8a310fc769b9ceb00153\r\nContent-Type:ap
plication/xml;charset=utf8\r\n\r\n');

示例2:

GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 936
system echo '你们好' > /tmp/1.txt
create table t(a varchar(1000) uri);
insert into t values('file:///tmp/1.txt\\r\\nContent-Type:text/plain\\r\\n\\r\
\n');
创建和更新全文索引正常成功
create fulltext index idx on t(a);
update index idx on t;