返回首页

gbase数据、南大通用产品文档:GBase8a关闭事件调度器

更新日期:2024年09月11日

关闭方法
方法一:可通过如下命令行关闭事件调度器。
SET GLOBAL event_scheduler = OFF;
SET @@global.event_scheduler = OFF;
SET GLOBAL event_scheduler = 0;
SET @@global.event_scheduler = 0;
方法二:通过配置文件gbase_8a_gbase.cnf 关闭事件调度器。
……
[gbased]
……
event_scheduler = 0 #或者OFF,DISABLED
……
查看调度器线程
gbase> show processlist\G
*************************** 1. row ***************************
Id: 621
User: root
Host: localhost
vc: vc1
db: NULL
Command: Sleep
Time: 376262
State:
Info: NULL
*************************** 2. row ***************************
Id: 883
User: root
Host: 172.168.83.11:44008
vc: NULL
db: NULL
Command: Sleep

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1448
Time: 6
State:
Info: NULL
2 rows in set (Elapsed: 00:00:00.00)

1 mons 1 days 06:00:00
-365
-12 mons -5 days
1 years 1 mons 8 days
12:00:00
1 years 1 mons 8 days
12:00:00
采用POSTGRES 格式表示时
间段,可以正负混用,不区
分大小写,输出结果为将输
入时间段计算并转换得到的
简化POSTGRES 格式时间
段。
-13 months -10 hours
-1 years -25 days
-04:00:00
-2 YEARS +5 MONTHS
10 DAYS
-1 years -6 mons -25
days -06:00:00
P-1.1Y10M
-3 mons -5 days
-06:00:00
采用ISO-8601 格式表示时间
段,可以正负混用,不区分
大小写,输出结果为将输入
时间段计算并转换得到的简
化POSTGRES 格式时间段。
-12H
-12:00:00
示例
--创建表。
gbase=# CREATE TABLE reltime_type_tab(col1 character(30), col2 reltime);

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
64
CREATE TABLE
--插入数据。
gbase=# INSERT INTO reltime_type_tab VALUES ('90', '90');
INSERT 0 1
gbase=# INSERT INTO reltime_type_tab VALUES ('-366', '-366');
INSERT 0 1
gbase=# INSERT INTO reltime_type_tab VALUES ('1975.25', '1975.25');
INSERT 0 1
gbase=# INSERT INTO reltime_type_tab VALUES ('-2 YEARS +5 MONTHS 10 DAYS', '-2
YEARS +5 MONTHS 10 DAYS');
INSERT 0 1
gbase=# INSERT INTO reltime_type_tab VALUES ('30 DAYS 12:00:00', '30 DAYS
12:00:00');
INSERT 0 1
gbase=# INSERT INTO reltime_type_tab VALUES ('P-1.1Y10M', 'P-1.1Y10M');
INSERT 0 1
--查看数据。
gbase=# SELECT * FROM reltime_type_tab;
col1
|
col2
--------------------------------+-------------------------------------
90
| 3 mons
-366
| -1 years -18:00:00

声明一个游标变量后,可以用OPEN FOR语句打开:
l
将游标变量和查询相互关联(通常查询返回多行),查询中可以包含绑定变量的
占位符,它的值通过USING子句来指定。
l
处理查询:识别结果集。如果查询引用变量或游标参数,它的值会受影响。如果
查询有FOR UPDATE子句,会锁住结果集。将游标定位在结果集的第一行之前。
l
使用其他的OPEN FOR再次打开游标变量之前,不需要关闭它。在重新打开游标
变量后,与它关联的前一个查询会丢失。
注意:OPEN FOR 后跟的SQL语句必须加单引号
DROP TABLE IF EXISTS t1;
CREATE TABLE t1(id INT,col VARCHAR(10));
INSERT INTO t1 VALUES(123,'abc');
INSERT INTO t1 VALUES(456,'def');
DROP TABLE IF EXISTS t2;
CREATE TABLE t2(col VARCHAR(10));
DROP PROCEDURE IF EXISTS pro5;

CREATE OR REPLACE PROCEDURE pro5 AS
p_id INT:=456;
v_col VARCHAR(10);
TYPE t1CurTyp IS REF CURSOR;
cursor_a t1CurTyp;
BEGIN
OPEN cursor_a for 'SELECT col FROM t1 WHERE id=?' USING p_id;

GBase 8s PL/SQL手册
南大通用数据技术股份有限公司
- 112 -

LOOP
FETCH cursor_a INTO v_col;
EXIT WHEN cursor_a%NOTFOUND;
INSERT INTO t2 VALUES(v_col);
END LOOP;
CLOSE cursor_a;
END;

CALL pro5();
SELECT * FROM t2;