返回首页

gbase数据、南大通用产品文档:GBase8sset sql tracing session 参数:控制对会话的

更新日期:2024年09月11日

跟踪(SQL 管理 API)
随同 admin() 或 task() 函数,使用 set sql tracing session 参数来更改对当前会话的 SQL
跟踪。
语法

元素
描述
关键考虑
current_session_id 当前会话的 ID。这是缺省会话 ID。
session_id
这个命令应用的会话的 ID。


用法
使用 clear 参数来清除任何全局跟踪覆盖。该会话将符合全局跟踪策略。
使用 off 参数来关闭对该会话的跟踪,即使设置全局跟踪策略为启用跟踪。
使用 on 参数来开启对该会话的跟踪,即使设置全局跟踪策略为禁用跟踪。
示例
下列示例停止对当前会话的跟踪:
EXECUTE FUNCTION task("set sql tracing session","off");

SHOW CREATE PROCEDURE
语法格式
SHOW CREATE PROCEDURE [database_name.]proc_name
说明
显示创建了给定存储过程的CREATE PROCEDURE 语句。
示例
显示创建casedemo 存储过程的语句。
gbase> SHOW CREATE PROCEDURE casedemo;
+----------+-...-+----------------------------------------------+-...-+
|Procedure | ... | Create Procedure | ... |
+----------+-...------------------------------------------------+-...-+
| casedemo | ... | CREATE ... PROCEDURE " casedemo "() ... END | ... |
+----------+-...-+----------------------------------------------+-...-+
1 row in set
说明
在显示信息中包含6 列,每列的具体信息如下。

Procedure:casedemo

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

sql_mode:
PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,NO_AUTO_VALUE_ON_ZER
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 Procedure:CREATE DEFINER="root"@"%" PROCEDURE "casedemo"()
BEGIN
SELECT DISTINCT CASE WHEN c_nation='CHINA' THEN '中国' WHEN
c_nation='MOROCCO' THEN '摩洛哥' WHEN c_nation='JORDAN' THEN '约旦' ELSE '
其它国家' END 中文,c_nation FROM ssbm.customer LIMIT 10;
END

character_set_client:utf8

collation_connection:utf8_general_ci

Database Collation:utf8_general_ci

ifx_int8cvlong() 函数将 C long 类型值转换为 int8 类型值。
语法
mint ifx_int8cvlong(lng_val, int8_val)
int4 lng_val;
ifx_int8_t *int8_val;
lng_val
ifx_int8cvlong() 将其转换为 int8 类型值的 int4 整数。
int8_val
指向 ifx_int8cvlong() 放置转换的结果处的 int8 结构的指针。

返回代码
0
转换成功。
<0
转换失败。

示例
demo 目录中的文件 int8cvlong.ec 包含下列样例程序。
/*
* ifx_int8cvlong.ec *

The following program converts two longs to INT8
types and displays the results.
*/


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

#include

EXEC SQL include "int8.h";

char result[41];

main()
{
mint x;
ifx_int8_t num;
int4 n;

printf("IFX_INT8CVLONG Sample ESQL Program running.\n\n");

printf("Long Integer 1 = 129449233\n");
if (x = ifx_int8cvlong(129449233L, #))
{
printf("Error %d in converting long to INT8\n", x);
exit(1);
}
if (x = ifx_int8toasc(#, result, sizeof(result)))
{
printf("Error %d in converting INT8 to string\n", x);
exit(1);
}
result[40] = '\0';
printf(" String for INT8 type value = %s\n", result);

n = 2147483646; /* set n */
printf("Long Integer 2 = %d\n", n);
if (x = ifx_int8cvlong(n, #))
{
printf("Error %d in converting long to INT8\n", x);

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

exit(1);
}
if (x = ifx_int8toasc(#, result, sizeof(result)))
{
printf("Error %d in converting INT8 to string\n", x);
exit(1);
}
result[40] = '\0';
printf(" String for INT8 type value = %s\n", result);

printf("\nIFX_INT8CVLONG Sample Program over.\n\n");
exit(0);
}
输出
IFX_INT8CVLONG Sample ESQL Program running.

Long Integer 1 = 129449233
String for INT8 type value = 129449233
Long Integer 2 = 2147483646
String for INT8 type value = 2147483646
IFX_INT8CVLONG Sample Program over.