定时任务兼容M*时间单位
This commit is contained in:
@ -28,7 +28,7 @@ schedule_expr: {
|
||||
interval_expr:
|
||||
quantity {YEAR | MONTH | DAY | HOUR | MINUTE |
|
||||
SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |
|
||||
DAY TO SECOND | HOUR TO MINUTE | HOUR TO SECOND | MINUTE TO SECOND}
|
||||
DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
</refentry>
|
@ -570,7 +570,7 @@ static void setDelimiterName(core_yyscan_t yyscanner, char*input, VariableSetStm
|
||||
|
||||
%type <list> extract_list timestamp_arg_list overlay_list position_list
|
||||
%type <list> substr_list trim_list
|
||||
%type <list> opt_interval interval_second
|
||||
%type <list> opt_interval interval_second event_interval_unit opt_evtime_unit
|
||||
%type <node> overlay_placing substr_from substr_for
|
||||
|
||||
%type <boolean> opt_instead opt_incremental
|
||||
@ -864,7 +864,7 @@ static void setDelimiterName(core_yyscan_t yyscanner, char*input, VariableSetStm
|
||||
CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER CURSOR CYCLE
|
||||
SHRINK USE_P
|
||||
|
||||
DATA_P DATABASE DATAFILE DATANODE DATANODES DATATYPE_CL DATE_P DATE_FORMAT_P DAY_P DBCOMPATIBILITY_P DEALLOCATE DEC DECIMAL_P DECLARE DECODE DEFAULT DEFAULTS
|
||||
DATA_P DATABASE DATAFILE DATANODE DATANODES DATATYPE_CL DATE_P DATE_FORMAT_P DAY_P DAY_HOUR_P DAY_MINUTE_P DAY_SECOND_P DBCOMPATIBILITY_P DEALLOCATE DEC DECIMAL_P DECLARE DECODE DEFAULT DEFAULTS
|
||||
DEFERRABLE DEFERRED DEFINER DELETE_P DELIMITER DELIMITERS DELTA DELTAMERGE DESC DETERMINISTIC
|
||||
/* PGXC_BEGIN */
|
||||
DICTIONARY DIRECT DIRECTORY DISABLE_P DISCARD DISTINCT DISTRIBUTE DISTRIBUTION DO DOCUMENT_P DOMAIN_P DOUBLE_P
|
||||
@ -881,7 +881,7 @@ static void setDelimiterName(core_yyscan_t yyscanner, char*input, VariableSetStm
|
||||
|
||||
GENERATED GLOBAL GRANT GRANTED GREATEST GROUP_P GROUPING_P GROUPPARENT
|
||||
|
||||
HANDLER HAVING HDFSDIRECTORY HEADER_P HOLD HOUR_P
|
||||
HANDLER HAVING HDFSDIRECTORY HEADER_P HOLD HOUR_P HOUR_MINUTE_P HOUR_SECOND_P
|
||||
|
||||
IDENTIFIED IDENTITY_P IF_P IGNORE IGNORE_EXTRA_DATA ILIKE IMMEDIATE IMMUTABLE IMPLICIT_P IN_P INCLUDE
|
||||
INCLUDING INCREMENT INCREMENTAL INDEX INDEXES INFILE INHERIT INHERITS INITIAL_P INITIALLY INITRANS INLINE_P
|
||||
@ -896,7 +896,7 @@ static void setDelimiterName(core_yyscan_t yyscanner, char*input, VariableSetStm
|
||||
LABEL LANGUAGE LARGE_P LAST_P LC_COLLATE_P LC_CTYPE_P LEADING LEAKPROOF LINES
|
||||
LEAST LESS LEFT LEVEL LIKE LIMIT LIST LISTEN LOAD LOCAL LOCALTIME LOCALTIMESTAMP
|
||||
LOCATION LOCK_P LOCKED LOG_P LOGGING LOGIN_ANY LOGIN_FAILURE LOGIN_SUCCESS LOGOUT LOOP
|
||||
MAPPING MASKING MASTER MATCH MATERIALIZED MATCHED MAXEXTENTS MAXSIZE MAXTRANS MAXVALUE MERGE MINUS_P MINUTE_P MINVALUE MINEXTENTS MODE MODIFY_P MONTH_P MOVE MOVEMENT
|
||||
MAPPING MASKING MASTER MATCH MATERIALIZED MATCHED MAXEXTENTS MAXSIZE MAXTRANS MAXVALUE MERGE MINUS_P MINUTE_P MINUTE_SECOND_P MINVALUE MINEXTENTS MODE MODIFY_P MONTH_P MOVE MOVEMENT
|
||||
MODEL // DB4AI
|
||||
NAME_P NAMES NATIONAL NATURAL NCHAR NEXT NO NOCOMPRESS NOCYCLE NODE NOLOGGING NOMAXVALUE NOMINVALUE NONE
|
||||
NOT NOTHING NOTIFY NOTNULL NOWAIT NULL_P NULLCOLS NULLIF NULLS_P NUMBER_P NUMERIC NUMSTR NVARCHAR NVARCHAR2 NVL
|
||||
@ -942,7 +942,7 @@ static void setDelimiterName(core_yyscan_t yyscanner, char*input, VariableSetStm
|
||||
XML_P XMLATTRIBUTES XMLCONCAT XMLELEMENT XMLEXISTS XMLFOREST XMLPARSE
|
||||
XMLPI XMLROOT XMLSERIALIZE
|
||||
|
||||
YEAR_P YES_P
|
||||
YEAR_P YEAR_MONTH_P YES_P
|
||||
|
||||
ZONE
|
||||
|
||||
@ -15086,8 +15086,12 @@ user:
|
||||
ColId { $$ = $1; }
|
||||
;
|
||||
|
||||
event_interval_unit: opt_interval {$$ = $1;}
|
||||
| opt_evtime_unit {$$ = $1;}
|
||||
;
|
||||
|
||||
every_interval:
|
||||
Iconst opt_interval
|
||||
Iconst event_interval_unit
|
||||
{
|
||||
TypeName *t;
|
||||
t = SystemTypeName("interval");
|
||||
@ -15095,7 +15099,7 @@ every_interval:
|
||||
Node *num = makeIntConst($1, @1);
|
||||
$$ = makeTypeCast(num, t, -1);
|
||||
}
|
||||
| Sconst opt_interval
|
||||
| Sconst event_interval_unit
|
||||
{
|
||||
TypeName *t;
|
||||
t = SystemTypeName("interval");
|
||||
@ -15103,7 +15107,7 @@ every_interval:
|
||||
Node *num = makeStringConst($1, @1);
|
||||
$$ = makeTypeCast(num, t, -1);
|
||||
}
|
||||
| FCONST opt_interval
|
||||
| FCONST event_interval_unit
|
||||
{
|
||||
TypeName *t;
|
||||
t = SystemTypeName("interval");
|
||||
@ -25211,6 +25215,47 @@ opt_timezone:
|
||||
| /*EMPTY*/ { $$ = FALSE; }
|
||||
;
|
||||
|
||||
opt_evtime_unit:
|
||||
DAY_HOUR_P
|
||||
{
|
||||
$$ = list_make1(makeIntConst(INTERVAL_MASK(DAY) |
|
||||
INTERVAL_MASK(HOUR), @1));
|
||||
}
|
||||
| DAY_MINUTE_P
|
||||
{
|
||||
$$ = list_make1(makeIntConst(INTERVAL_MASK(DAY) |
|
||||
INTERVAL_MASK(HOUR) |
|
||||
INTERVAL_MASK(MINUTE), @1));
|
||||
}
|
||||
| DAY_SECOND_P
|
||||
{
|
||||
$$ = list_make1(makeIntConst(INTERVAL_MASK(DAY) |
|
||||
INTERVAL_MASK(HOUR) |
|
||||
INTERVAL_MASK(MINUTE) |
|
||||
INTERVAL_MASK(SECOND), @1));
|
||||
}
|
||||
| HOUR_MINUTE_P
|
||||
{
|
||||
$$ = list_make1(makeIntConst(INTERVAL_MASK(HOUR) |
|
||||
INTERVAL_MASK(MINUTE), @1));
|
||||
}
|
||||
| HOUR_SECOND_P
|
||||
{
|
||||
$$ = list_make1(makeIntConst(INTERVAL_MASK(HOUR) |
|
||||
INTERVAL_MASK(MINUTE) |
|
||||
INTERVAL_MASK(SECOND), @1));
|
||||
}
|
||||
| MINUTE_SECOND_P
|
||||
{
|
||||
$$ = list_make1(makeIntConst(INTERVAL_MASK(MINUTE) |
|
||||
INTERVAL_MASK(SECOND), @1));
|
||||
}
|
||||
| YEAR_MONTH_P
|
||||
{
|
||||
$$ = list_make1(makeIntConst(INTERVAL_MASK(YEAR) |
|
||||
INTERVAL_MASK(MONTH), @1));
|
||||
}
|
||||
|
||||
opt_interval:
|
||||
YEAR_P
|
||||
{ $$ = list_make1(makeIntConst(INTERVAL_MASK(YEAR), @1)); }
|
||||
@ -28540,7 +28585,10 @@ unreserved_keyword:
|
||||
| DATANODES
|
||||
| DATATYPE_CL
|
||||
| DATE_FORMAT_P
|
||||
| DAY_HOUR_P
|
||||
| DAY_MINUTE_P
|
||||
| DAY_P
|
||||
| DAY_SECOND_P
|
||||
| DBCOMPATIBILITY_P
|
||||
| DEALLOCATE
|
||||
| DECLARE
|
||||
@ -28621,7 +28669,9 @@ unreserved_keyword:
|
||||
| HANDLER
|
||||
| HEADER_P
|
||||
| HOLD
|
||||
| HOUR_MINUTE_P
|
||||
| HOUR_P
|
||||
| HOUR_SECOND_P
|
||||
| IDENTIFIED
|
||||
| IDENTITY_P
|
||||
| IF_P
|
||||
@ -28691,6 +28741,7 @@ unreserved_keyword:
|
||||
| MERGE
|
||||
| MINEXTENTS
|
||||
| MINUTE_P
|
||||
| MINUTE_SECOND_P
|
||||
| MINVALUE
|
||||
| MODE
|
||||
| MODEL // DB4AI
|
||||
@ -28918,6 +28969,7 @@ unreserved_keyword:
|
||||
| WRAPPER
|
||||
| WRITE
|
||||
| XML_P
|
||||
| YEAR_MONTH_P
|
||||
| YEAR_P
|
||||
| YES_P
|
||||
| ZONE
|
||||
|
@ -525,7 +525,7 @@ extern THR_LOCAL bool stmt_contains_operator_plus;
|
||||
CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER CURSOR CYCLE
|
||||
SHRINK USE_P
|
||||
|
||||
DATA_P DATABASE DATAFILE DATANODE DATANODES DATATYPE_CL DATE_P DATE_FORMAT_P DAY_P DBCOMPATIBILITY_P DEALLOCATE DEC DECIMAL_P DECLARE DECODE DEFAULT DEFAULTS
|
||||
DATA_P DATABASE DATAFILE DATANODE DATANODES DATATYPE_CL DATE_P DATE_FORMAT_P DAY_P DAY_HOUR_P DAY_MINUTE_P DAY_SECOND_P DBCOMPATIBILITY_P DEALLOCATE DEC DECIMAL_P DECLARE DECODE DEFAULT DEFAULTS
|
||||
DEFERRABLE DEFERRED DEFINER DELETE_P DELIMITER DELIMITERS DELTA DELTAMERGE DESC DETERMINISTIC
|
||||
/* PGXC_BEGIN */
|
||||
DICTIONARY DIRECT DIRECTORY DISABLE_P DISCARD DISTINCT DISTRIBUTE DISTRIBUTION DO DOCUMENT_P DOMAIN_P DOUBLE_P
|
||||
@ -543,7 +543,7 @@ extern THR_LOCAL bool stmt_contains_operator_plus;
|
||||
|
||||
GENERATED GLOBAL GRANT GRANTED GREATEST GROUP_P GROUPING_P GROUPPARENT
|
||||
|
||||
HANDLER HAVING HDFSDIRECTORY HEADER_P HOLD HOUR_P
|
||||
HANDLER HAVING HDFSDIRECTORY HEADER_P HOLD HOUR_P HOUR_MINUTE_P HOUR_SECOND_P
|
||||
|
||||
IDENTIFIED IDENTITY_P IF_P IGNORE IGNORE_EXTRA_DATA ILIKE IMMEDIATE IMMUTABLE IMPLICIT_P IN_P
|
||||
INCLUDE INCLUDING INCREMENT INCREMENTAL INDEX INDEXES INFILE INHERIT INHERITS INITIAL_P INITIALLY INITRANS INLINE_P
|
||||
@ -557,7 +557,7 @@ extern THR_LOCAL bool stmt_contains_operator_plus;
|
||||
LABEL LANGUAGE LARGE_P LAST_P LC_COLLATE_P LC_CTYPE_P LEADING LEAKPROOF LINES
|
||||
LEAST LESS LEFT LEVEL LIST LIKE LIMIT LISTEN LOAD LOCAL LOCALTIME LOCALTIMESTAMP
|
||||
LOCATION LOCK_P LOCKED LOG_P LOGGING LOGIN_ANY LOGIN_SUCCESS LOGIN_FAILURE LOGOUT LOOP
|
||||
MAPPING MASKING MASTER MASTR MATCH MATERIALIZED MATCHED MAXEXTENTS MAXSIZE MAXTRANS MAXVALUE MERGE MINUS_P MINUTE_P MINVALUE MINEXTENTS MODE MODIFY_P MONTH_P MOVE MOVEMENT
|
||||
MAPPING MASKING MASTER MASTR MATCH MATERIALIZED MATCHED MAXEXTENTS MAXSIZE MAXTRANS MAXVALUE MERGE MINUS_P MINUTE_P MINUTE_SECOND_P MINVALUE MINEXTENTS MODE MODIFY_P MONTH_P MOVE MOVEMENT
|
||||
MODEL // DB4AI
|
||||
NAME_P NAMES NATIONAL NATURAL NCHAR NEXT NLSSORT NO NOCOMPRESS NOCYCLE NODE NOLOGGING NOMAXVALUE NOMINVALUE NONE
|
||||
NOT NOTHING NOTIFY NOTNULL NOWAIT NULL_P NULLCOLS NULLIF NULLS_P NUMBER_P NUMERIC NUMSTR NVARCHAR NVARCHAR2 NVL
|
||||
@ -603,7 +603,7 @@ extern THR_LOCAL bool stmt_contains_operator_plus;
|
||||
XML_P XMLATTRIBUTES XMLCONCAT XMLELEMENT XMLEXISTS XMLFOREST XMLPARSE
|
||||
XMLPI XMLROOT XMLSERIALIZE
|
||||
|
||||
YEAR_P YES_P
|
||||
YEAR_P YEAR_MONTH_P YES_P
|
||||
|
||||
ZONE
|
||||
|
||||
@ -11687,8 +11687,11 @@ unreserved_keyword:
|
||||
| DATANODE
|
||||
| DATANODES
|
||||
| DATATYPE_CL
|
||||
| DAY_P
|
||||
| DATE_FORMAT_P
|
||||
| DAY_HOUR_P
|
||||
| DAY_MINUTE_P
|
||||
| DAY_P
|
||||
| DAY_SECOND_P
|
||||
| DBCOMPATIBILITY_P
|
||||
| DEALLOCATE
|
||||
| DECLARE
|
||||
@ -11761,7 +11764,9 @@ unreserved_keyword:
|
||||
| HANDLER
|
||||
| HEADER_P
|
||||
| HOLD
|
||||
| HOUR_MINUTE_P
|
||||
| HOUR_P
|
||||
| HOUR_SECOND_P
|
||||
| IDENTIFIED
|
||||
| IDENTITY_P
|
||||
| IF_P
|
||||
@ -11830,6 +11835,7 @@ unreserved_keyword:
|
||||
| MERGE
|
||||
| MINEXTENTS
|
||||
| MINUTE_P
|
||||
| MINUTE_SECOND_P
|
||||
| MINVALUE
|
||||
| MODE
|
||||
| MODEL // DB4AI
|
||||
@ -12039,6 +12045,7 @@ unreserved_keyword:
|
||||
| WRAPPER
|
||||
| WRITE
|
||||
| XML_P
|
||||
| YEAR_MONTH_P
|
||||
| YEAR_P
|
||||
| YES_P
|
||||
| ZONE
|
||||
|
@ -171,6 +171,9 @@ PG_KEYWORD("datatype_cl", DATATYPE_CL, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("date", DATE_P, COL_NAME_KEYWORD)
|
||||
PG_KEYWORD("date_format", DATE_FORMAT_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("day", DAY_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("day_hour", DAY_HOUR_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("day_minute", DAY_MINUTE_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("day_second", DAY_SECOND_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("dbcompatibility", DBCOMPATIBILITY_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("deallocate", DEALLOCATE, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("dec", DEC, COL_NAME_KEYWORD)
|
||||
@ -284,6 +287,8 @@ PG_KEYWORD("hdfsdirectory", HDFSDIRECTORY, TYPE_FUNC_NAME_KEYWORD)
|
||||
PG_KEYWORD("header", HEADER_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("hold", HOLD, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("hour", HOUR_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("hour_minute", HOUR_MINUTE_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("hour_second", HOUR_SECOND_P, UNRESERVED_KEYWORD)
|
||||
/* new key-word for ALTER ROLE */
|
||||
PG_KEYWORD("identified", IDENTIFIED, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("identity", IDENTITY_P, UNRESERVED_KEYWORD)
|
||||
@ -376,6 +381,7 @@ PG_KEYWORD("merge", MERGE, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("minextents", MINEXTENTS, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("minus", MINUS_P, RESERVED_KEYWORD)
|
||||
PG_KEYWORD("minute", MINUTE_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("minute_second", MINUTE_SECOND_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("minvalue", MINVALUE, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("mode", MODE, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("model", MODEL, UNRESERVED_KEYWORD)
|
||||
@ -693,5 +699,6 @@ PG_KEYWORD("xmlpi", XMLPI, COL_NAME_KEYWORD)
|
||||
PG_KEYWORD("xmlroot", XMLROOT, COL_NAME_KEYWORD)
|
||||
PG_KEYWORD("xmlserialize", XMLSERIALIZE, COL_NAME_KEYWORD)
|
||||
PG_KEYWORD("year", YEAR_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("year_month", YEAR_MONTH_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("yes", YES_P, UNRESERVED_KEYWORD)
|
||||
PG_KEYWORD("zone", ZONE, UNRESERVED_KEYWORD)
|
||||
|
@ -413,6 +413,65 @@ select job_name, nspname from pg_job where dbname='event_b';
|
||||
|
||||
drop event if exists evtest;
|
||||
NOTICE: event "evtest" is not exists, skipping
|
||||
--test time unit
|
||||
drop event if exists ev_unit;
|
||||
NOTICE: event "ev_unit" is not exists, skipping
|
||||
create event ev_unit on schedule every '1-1' YEAR_MONTH do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
interval
|
||||
-------------------------------
|
||||
interval '1-1' year to month
|
||||
(1 row)
|
||||
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '-1 10' DAY_HOUR do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
interval
|
||||
-------------------------------
|
||||
interval '-1 10' day to hour
|
||||
(1 row)
|
||||
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1 1:00' DAY_MINUTE do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
interval
|
||||
----------------------------------
|
||||
interval '1 1:00' day to minute
|
||||
(1 row)
|
||||
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1 1:1:1' DAY_SECOND do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
interval
|
||||
-----------------------------------
|
||||
interval '1 1:1:1' day to second
|
||||
(1 row)
|
||||
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1:1:1' HOUR_MINUTE do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
interval
|
||||
----------------------------------
|
||||
interval '1:1:1' hour to minute
|
||||
(1 row)
|
||||
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1:1' MINUTE_SECOND do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
interval
|
||||
----------------------------------
|
||||
interval '1:1' minute to second
|
||||
(1 row)
|
||||
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '01:12:30' HOUR_SECOND do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
interval
|
||||
-------------------------------------
|
||||
interval '01:12:30' hour to second
|
||||
(1 row)
|
||||
|
||||
drop event if exists ev_unit;
|
||||
--if not exists
|
||||
create event e on schedule every 1 month disable do select 1;
|
||||
select pg_sleep(0.2);
|
||||
@ -907,7 +966,7 @@ schedule_expr: {
|
||||
interval_expr:
|
||||
quantity {YEAR | MONTH | DAY | HOUR | MINUTE |
|
||||
SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |
|
||||
DAY TO SECOND | HOUR TO MINUTE | HOUR TO SECOND | MINUTE TO SECOND}
|
||||
DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}
|
||||
|
||||
\h ALTER EVENT
|
||||
Command: ALTER EVENT
|
||||
|
@ -119,6 +119,29 @@ create event IF NOT EXISTS evtest on schedule every 1 minute starts sysdate + in
|
||||
select pg_sleep(0.2);
|
||||
select job_name, nspname from pg_job where dbname='event_b';
|
||||
drop event if exists evtest;
|
||||
--test time unit
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1-1' YEAR_MONTH do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '-1 10' DAY_HOUR do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1 1:00' DAY_MINUTE do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1 1:1:1' DAY_SECOND do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1:1:1' HOUR_MINUTE do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '1:1' MINUTE_SECOND do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
drop event if exists ev_unit;
|
||||
create event ev_unit on schedule every '01:12:30' HOUR_SECOND do select 1;
|
||||
select interval from pg_job where job_name='ev_unit';
|
||||
drop event if exists ev_unit;
|
||||
|
||||
|
||||
--if not exists
|
||||
|
Reference in New Issue
Block a user