返回首页

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

更新日期:2024年09月11日

功能
这个参数用于管理数据包缓存堆的大小。
这是一个非常重要的参数,合理的参数设置可以从很大程度上提高数据库的查询
性能。
将gbase_heap_data 设置的很大,可以大大改善数据库的查询性能,但过大的
gbase_heap_data 会导致操作系统的不稳定,因此,gbase_heap_data +
gbase_heap_temp + gbase_heap_large + gbase_buffer_insert 不能超过系统总内存的
80%,否则启动时会报错。
该参数的默认值是由系统自动评估计算出来的,不是固定的值。默认值为物理内
存*(6/16),单位:字节。
修改该参数(过大)会影响内存检测的结果,可能会导致节点进程启动终止,内
存检测请参考gbase_memory_pct_target 参数。

您可以将 SET ENCRYPTION PASSWORD 语句与内置 SQL 加密函数(使用 Advanced
Encryption Standard (AES)
和 Triple DES (3DES)
加密)
一起使用来保护您的敏感数据。
如果使用加密,只有拥有正确密码的用户才能读取、复制或修改数据。
将SET ENCRYPTION PASSWORD 语句与下列内置加密和解密函数一起使用 :

ENCRYPT_AES
ENCRYPT_AES(data-string-expression
[, password-string-expression [, hint-string-expression ]])


ENCRYPT_TDES
ENCRYPT_TDES (data-string-expression
[, password-string-expression [, hint-string-expression ]])


GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司
- 113 -

DECRYPT_CHAR
DECRYPT_CHAR(EncryptedData [, PasswordOrPhrase])

DECRYPT_BINARY
DECRYPT_BINARY(EncryptedData [, PasswordOrPhrase])

GETHINT
GETHINT(EncryptedData)
如果您使用了 SET ENCRYPTION PASSWORD 语句来指定缺省密码,那么数据库服务器
将该密码应用于同一会话中调用的对加密和解密函数的后续调用中。
使用 ENCRYPT_AES 和 ENCRYPT_TDES 定义加密的数据,使
用 DECRYPT_CHAR 和 DECRYPT_BINARY 查询加密的数据。
使用 GETHINT 显示密码提
示符(如果在服务器上设置了该字符串)。
可以使用这些 SQL 内置函数来实现列级别或单元级别加密。
使用列级别加密,用相同的密码为给定列上的所有值加密。
使用单元级别加密,用不同的密码为列内的数据加密。
提示: 如果想从大型表中选择加密数据,请指定未加密的列。在其中选择行,可对包含加密数
据的列创建索引或外键约束,但是这样做对资源使用的效率较低,原因是查询优化器不使用此
类索引和外键约束。

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 数据类型。