返回首页

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

更新日期:2024年09月11日

修改存储过程
使用“修改存储过程”功能,您可以在修改数据库中的存储过程。
在“对象资源管理器”中,右键单击数据库节点下的存储过程节点中的存
储过程,选择菜单中的“修改”菜单项,如下图所示:

图 7-57 修改存储过程菜单项
选择“修改”菜单项后,管理器会打开SQL 编辑器并在SQL 编辑器中显示
修改存储过程的脚本,如下图所示:

图 7-58 修改存储过程
您可以将SQL 脚本修改为您所需要的脚本,然后执行即可修改存储过程。



GBase 8a MPP Cluster 管理工具手册
南大通用数据技术股份有限公司

- 79 -

JDBC 驱动发送给服务器的所有字符串都自动地从本地的Java Unicode 转换到客户
端的字符编码,包括所有通过Statement.execute() 、Statement.executeUpdate() 、
Statement.executeQuery() 发送的查询以及所有
PreparedStatement

CallableStatement 参数,但使用setBytes() 、setBinaryStream() 、setAsiiStream() 、
setUnicodeStream() 和 setBlob()的参数集不包含在内。
GBase UP 使用JDBC的ResultSets在客户端与服务器之间传输数据支持单一编码形
式以及任意数目的编码形式。
在连接时会自动地检测客户端与服务器之间的字符编码。通过配置变量,驱动使用
的编码指定在服务器上,这个变量在GBase 8a server 中是“character_set_server ”。
如果不想客户端自动识别编码,可以在用来连接服务器的URL 中使用
characterEncoding 属性,
使用该属性的同时必须使用设置
“useUnicode”
的值为true。

当在客户端指定字符编码时,
应该使用Java-style 名字。
下表列出了对于GBase 字
符集的Java-style 名字:
表 6-4 Java-style 名字

GBase UP 产品手册 6 应用开发指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 1017
GBase Server 字符集名
Java 字符集名称
gbk
GBK
utf8
UTF-8

注意
在GBase JDBC 中,不要执行“set names”来设置字符集,因为驱动不会发现字
符集已经改变,而是会继续使用在初始化连接设置时使用的字符集。
为了允许从客户端发来的各种字符集,应当使用“UTF-8”编码,或者把“UTF-8”
配置成缺省的服务器字符集,或者通过characterEncoding 属性配置JDBC 驱动使用
“UTF-8”。
GBase JDBC 高可用特性
GBase JDBC 高可用特性是针对GBase 数据库集群提供客户端高可用及负载均衡相
关功能功能。

范围值的输入必须遵循下列模式之一:
(lower-bound,upper-bound)
(lower-bound,upper-bound]
[lower-bound,upper-bound)
[lower-bound,upper-bound]
empty

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
89
圆括号或方括号指示上下界是否为被排除或被包含的。empty 表示空范围。
lower-bound 可以是作为subtype 的合法输入的一个字符串,
或者是空表示没有下界。

样,upper-bound 可以是作为subtype 的合法输入的一个字符串,或者是空表示没有上界。

每个界限值可以使用"(双引号)字符引用。如果界限值包含圆括号、方括号、逗号、
双引号或反斜线时,
必须使用双引号。
否则那些字符认定为范围语法,
而非界限值内容。

如需把双引号或反斜线放在被引用的界限值中,则需在前面添加使用一个反斜线。

在双引号引用的界限值中的一对双引号,表示为双引号字符,这与SQL 字符串中的单
引号规则类似。

用户可以避免引用,
并且使用反斜线转义来保护所有数据字符,
否则它们会被当做返回
语法的一部分。

如需写一个空字符串的界限值,则可以写成""。什么都不写,默认表示一个无限界限。

范围值前后允许有空格,
但是圆括号或方括号之间的任何空格,
认定为上下界值的一部
分。
示例
-- 包括3,不包括7,并且包括3 和7 之间的所有点
gbase=# SELECT
'[3,7)'::int4range;
[3,7)
-- 既不包括3 也不包括7,但是包括之间的所有点
gbase=# SELECT '(3,7)'::int4range;
[4,7)
-- 只包括单独一个点4
gbase=# SELECT
'[4,4]'::int4range;
[4,5)
-- 不包括点(并且将被标准化为'空')
gbase=# SELECT '[4,4)'::int4range;
empty