返回首页

gbase数据、南大通用产品文档:GBase8aCURRENT_USER()

更新日期:2024年09月11日

返回当前会话连接匹配的用户名和主机名的结合。
这个值对应于决定用户访问权限
的帐号。
示例
示例1:返回当前会话连接匹配的用户名和主机名。
gbase> SELECT USER() FROM t;
+---------------------+
| USER() |
+---------------------+
| root@192.168.10.115 |
+---------------------+
1 row in set
示例2:返回当前会话连接匹配的用户名和主机名的结合。
gbase> SELECT CURRENT_USER() FROM t;
+----------------+
| CURRENT_USER() |
+----------------+
| root@% |
+----------------+
1 row in set

要获得智能大对象的状态信息,请按以下步骤操作:

获取有效的 LO 指针结构到您想要状态的智能大对象。
使用 ifx_lo_stat() 函数分配并填充 LO 状态结构。
使用适当的 GBase 8s ESQL/C 访问程序函数获取您需要的状态信息。
释放 LO 状态结构。
获取有效的 LO 指针结构
可以获取任何具有有效 LO 指针结构的智能大对象的状态信息。
可以执行以下任一步
骤来获取 LO 指针结构:

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 204 -

从数据库表选择 CLOB 或 BLOB 列。
创建新的智能大对象。
分配和访问LO 状态结构
LO 状态结构存储智能大对象的状态信息。本节描述如何分配和访问 LO 状态结构。

分配 LO 状态结构
ifx_lo_stat() 函数执行以下任务:
它分配一个新的 LO 状态结构,将您提供的指针作为参数。
它使用所提供的 LO 文件描述符的智能大对象的所有状态信息初始化 IO 状态结构。

访问 LO 状态结构
LO 状态结构 ifx_lo_stat_t 存储 GBase 8s ESQL/C 程序中智能大对象的状态信息。
locator.h 头文件定义 LO 状态结构,所以您必须在访问此结构的 GBase 8s ESQL/C 程序
中包含 locator.h 文件。

重要: LO 状态结构 ifx_lo_stat_t 对于 GBase 8s ESQL/C 程序是不透明的。不要直
接访问它的内部结构。
ifx_lo_stat_t 的内部结构可能在以后的版本中有所变更。
因此,
要创
建便捷式代码,一般对此结构使用 GBase 8s ESQL/C 访问程序函数来获得和存储 LO 状
态结构的值。

下表显示了对应于 GBase 8s ESQL/C 访问函数的状态信息。

表 4. LO 状态结构中的状态信息
磁盘存储信息
描述
ESQL/C 访问程序函数
上次访问时间
上一次访问智能大对象的时间(以秒为单
位)。
仅当此智能大对象设置了
LO_KEEP_LASTACCESS_TIME 标识时,
此值
才可用

ifx_lo_stat_atime()
存储特征
智能大对象的存储特征。
这些特征都存储在 LO 特定结构中对 LO
特定结构使用 GBase 8s ESQL/C 存储程
序函数(请参阅 表 1和 表 1)来获得此
信息。

ifx_lo_stat_cspec
()

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 205 -

磁盘存储信息
描述
ESQL/C 访问程序函数
最后一次更改状

智能大对象最后一次更改状态的时间(以
秒为单位)。
状态的更改包括更新、所有权变更以及引
用次数的更改。

ifx_lo_stat_ctime()
上一次修改时间
(秒)
上一次修改智能大对象的时间(以秒为单
位)。
ifx_lo_stat_mtime
_sec()
引用次数
引用智能大对象的次数。
ifx_lo_stat_refcnt()
大小
智能大对象的大小(以字节为单位)。
ifx_lo_stat_size()

时间值(例如上次访问时间和上次更改时间)可能与系统时间略有不同。这种差异是
由于数据库服务器用来从操作系统获取时间的算法。
释放 LO 状态结构
在使用完毕 LO 状态结构后,
使用 ifx_lo_stat_free() 函数释放它的资源。
当资源被释
放,它们可以被重新分配给程序需要的其它结构。

使用 DS_POOLSIZE 参数来指定在数据分布高速缓存和其他高速缓存中条目的最大数目。

据库服务器存储和访问列统计信息,在数据分布高速缓存中由 UPDATE
STATISTICS 语句在
MEDIUM 或 HIGH 模式下生成。
onconfig.std 值

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

正值 127 或更大的表示高速缓存中条目初始的最大数目的一半。
最大值依赖于共享内存配
置和可用的服务器实例的共享内存。
生效
编辑 onconfig 文件并重启数据库服务器之后。
当您通过运行 onmode -wm 命令增加内存中的该值时。
当您通过运行 onmode -wm 命令重置内存中的该值时。
用法
使用 DS_HASHSIZE 和 DS_POOLSIZE 配置参数来提高在多用户环境中频繁地运行查询的性
能。
高速缓存中的最初条目数是 DS_POOLSIZE 配置参数值的两倍。
例如,
如果 DS_POOLSIZE 配
置参数设置为 127,则在高速缓存中允许 254 个条目。 如果高速缓存中所有条目都满,
则高速缓存的大小自动地增长 10%。要减小高速缓存的大小,请降低 onconfig 文件中
DS_POOLSIZE 配置参数的值并重启服务器。
DS_POOLSIZE 配置参数设置在下列高速缓存中的条目数:
 数据分布高速缓存
 扩展类型名称高速缓存
 扩展类型 ID 高速缓存
 GBase_85 cast 高速缓存
 运算符类实例高速缓存
 例程解析高速缓存
 合计高速缓存
 辅助瞬态高速缓存