返回首页

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

更新日期:2024年09月11日

SHOW CREATE FUNCTION
语法格式
SHOW CREATE FUNCTION [database_name.]fun_name
说明
显示创建了给定函数的CREATE FUNCTION 语句。
示例
显示创建fn_count 函数的语句。
gbase> SHOW CREATE FUNCTION fn_count;
+----------+-...-+--------------------------------------------+-...-+
| Function | ... | Create Funtion | ... |
+----------+-...----------------------------------------------+-...-+
| fn_count | ... | CREATE ... Function " fn_count " ... END | ... |
+----------+-...-+--------------------------------------------+-...-+
1 row in set
说明
在显示信息中包含6 列,每列的具体信息如下。

Function:fn_count

sql_mode:
PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,NO_AUTO_VALUE_ON_ZER

GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 796
O,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_AUTO_CREA
TE_USER,NO_ENGINE_SUBSTITUTION,PAD_CHAR_TO_FULL_LENGTH

Create Function:CREATE DEFINER="root"@"%" FUNCTION "fn_count"(param
varchar(10)) RETURNS int

BEGIN

SELECT COUNT(*)/5 INTO @count FROM ssbm.customer WHERE c_nation= param;

RETURN @count;

END

character_set_client:utf8

collation_connection:utf8_general_ci

Database Collation:utf8_general_ci

包含列分隔符的第一个字符的数据的导出
问题现象
包含列分隔符的第一个字符的数据的导出。
解决方法
由于导出数据中包含列分隔符的第一个字符,这时导出程序会给数据中与列分隔
符第一个字符重复的字符进行转义。
举例如下:
数据库里的数据:

GBase 8a MPP Cluster 最佳实践
5 FAQ
文档版本(2022-02-11)
南大通用数据技术股份有限公司
148
col1
col2
a
1|2|3

第一种情况:分隔符是“|@$”时,直接使用select 命令导出数据:
a|@$1\|2\|3
由于“|”被加了转义符,所以在导入的时候出现错误。

第二种情况:分隔符是“@$”时,直接使用select 命令导出数据:
a@$1|2|3
由于“|”没有加转义符,此时导入数据是正确的。

第三种情况:
分隔符是“|@$”时,
使用select 命令并增加escaped by 导出数据:
a@$1|2|3
由于“|”没有加转义符,此时导入数据是正确的。
结论:在数据内容包含列分隔符首字符时,需要增加escaped by,以解决转义问
题。

示例
示例1:两个操作数都是整型。
gbase> SELECT 3*5 FROM dual;
+-----+
| 3*5 |
+-----+
|
15 |
+-----+
1 row in set