diff --git a/modules/core/db/db2/job.sql b/modules/core/db/db2/job.sql new file mode 100644 index 00000000..b8971db3 --- /dev/null +++ b/modules/core/db/db2/job.sql @@ -0,0 +1,143 @@ +-- tables_db2_v95.sql + +DROP TABLE js_job_FIRED_TRIGGERS; +DROP TABLE js_job_PAUSED_TRIGGER_GRPS; +DROP TABLE js_job_SCHEDULER_STATE; +DROP TABLE js_job_LOCKS; +DROP TABLE js_job_SIMPLE_TRIGGERS; +DROP TABLE js_job_SIMPROP_TRIGGERS; +DROP TABLE js_job_CRON_TRIGGERS; +DROP TABLE js_job_TRIGGERS; +DROP TABLE js_job_JOB_DETAILS; +DROP TABLE js_job_CALENDARS; +DROP TABLE js_job_BLOB_TRIGGERS; + +create table js_job_job_details( +sched_name varchar(120) not null, +job_name varchar(80) not null, +job_group varchar(80) not null, +description varchar(120), +job_class_name varchar(128) not null, +is_durable integer not null, +is_nonconcurrent integer not null, +is_update_data integer not null, +requests_recovery integer not null, +job_data blob(2000), +primary key (sched_name,job_name,job_group) +); + +create table js_job_triggers( +sched_name varchar(120) not null, +trigger_name varchar(80) not null, +trigger_group varchar(80) not null, +job_name varchar(80) not null, +job_group varchar(80) not null, +description varchar(120), +next_fire_time bigint, +prev_fire_time bigint, +priority integer, +trigger_state varchar(16) not null, +trigger_type varchar(8) not null, +start_time bigint not null, +end_time bigint, +calendar_name varchar(80), +misfire_instr smallint, +job_data blob(2000), +primary key (sched_name,trigger_name,trigger_group), +foreign key (sched_name,job_name,job_group) references js_job_job_details(sched_name,job_name,job_group) +); + +create table js_job_simple_triggers( +sched_name varchar(120) not null, +trigger_name varchar(80) not null, +trigger_group varchar(80) not null, +repeat_count bigint not null, +repeat_interval bigint not null, +times_triggered bigint not null, +primary key (sched_name,trigger_name,trigger_group), +foreign key (sched_name,trigger_name,trigger_group) references js_job_triggers(sched_name,trigger_name,trigger_group) +); + +create table js_job_cron_triggers( +sched_name varchar(120) not null, +trigger_name varchar(80) not null, +trigger_group varchar(80) not null, +cron_expression varchar(120) not null, +time_zone_id varchar(80), +primary key (sched_name,trigger_name,trigger_group), +foreign key (sched_name,trigger_name,trigger_group) references js_job_triggers(sched_name,trigger_name,trigger_group) +); + +CREATE TABLE js_job_simprop_triggers + ( + sched_name varchar(120) not null, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + STR_PROP_1 VARCHAR(512), + STR_PROP_2 VARCHAR(512), + STR_PROP_3 VARCHAR(512), + INT_PROP_1 INT, + INT_PROP_2 INT, + LONG_PROP_1 BIGINT, + LONG_PROP_2 BIGINT, + DEC_PROP_1 NUMERIC(13,4), + DEC_PROP_2 NUMERIC(13,4), + BOOL_PROP_1 VARCHAR(1), + BOOL_PROP_2 VARCHAR(1), + PRIMARY KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(sched_name,TRIGGER_NAME,TRIGGER_GROUP) +); + +create table js_job_blob_triggers( +sched_name varchar(120) not null, +trigger_name varchar(80) not null, +trigger_group varchar(80) not null, +blob_data blob(2000), +primary key (sched_name,trigger_name,trigger_group), +foreign key (sched_name,trigger_name,trigger_group) references js_job_triggers(sched_name,trigger_name,trigger_group) +); + +create table js_job_calendars( +sched_name varchar(120) not null, +calendar_name varchar(80) not null, +calendar blob(2000) not null, +primary key (calendar_name) +); + +create table js_job_fired_triggers( +sched_name varchar(120) not null, +entry_id varchar(95) not null, +trigger_name varchar(80) not null, +trigger_group varchar(80) not null, +instance_name varchar(80) not null, +fired_time bigint not null, +sched_time bigint not null, +priority integer not null, +state varchar(16) not null, +job_name varchar(80), +job_group varchar(80), +is_nonconcurrent integer, +requests_recovery integer, +primary key (sched_name,entry_id) +); + +create table js_job_paused_trigger_grps( +sched_name varchar(120) not null, +trigger_group varchar(80) not null, +primary key (sched_name,trigger_group) +); + +create table js_job_scheduler_state( +sched_name varchar(120) not null, +instance_name varchar(80) not null, +last_checkin_time bigint not null, +checkin_interval bigint not null, +primary key (sched_name,instance_name) +); + +create table js_job_locks( +sched_name varchar(120) not null, +lock_name varchar(40) not null, +primary key (sched_name,lock_name) +); diff --git a/web/db/db2/core.sql b/modules/core/db/h2/core.sql similarity index 77% rename from web/db/db2/core.sql rename to modules/core/db/h2/core.sql index 9dc74538..4c1f29ab 100644 --- a/web/db/db2/core.sql +++ b/modules/core/db/h2/core.sql @@ -44,7 +44,7 @@ CREATE TABLE js_gen_table ( table_name varchar(64) NOT NULL, class_name varchar(100) NOT NULL, - comments vargraphic(500) NOT NULL, + comments varchar(500) NOT NULL, parent_table_name varchar(64), parent_table_fk_name varchar(64), data_source_name varchar(64), @@ -52,16 +52,16 @@ CREATE TABLE js_gen_table package_name varchar(500), module_name varchar(30), sub_module_name varchar(30), - function_name vargraphic(200), - function_name_simple vargraphic(50), - function_author vargraphic(50), - gen_base_dir vargraphic(1000), - options vargraphic(1000), + function_name varchar(200), + function_name_simple varchar(50), + function_author varchar(50), + gen_base_dir varchar(1000), + options varchar(1000), create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (table_name) ); @@ -74,8 +74,8 @@ CREATE TABLE js_gen_table_column column_name varchar(64) NOT NULL, column_sort decimal(10), column_type varchar(100) NOT NULL, - column_label vargraphic(50), - comments vargraphic(500) NOT NULL, + column_label varchar(50), + comments varchar(500) NOT NULL, attr_name varchar(200) NOT NULL, attr_type varchar(200) NOT NULL, is_pk char(1), @@ -87,7 +87,7 @@ CREATE TABLE js_gen_table_column query_type varchar(200), is_edit char(1), show_type varchar(200), - options vargraphic(1000), + options varchar(1000), PRIMARY KEY (id) ); @@ -103,14 +103,14 @@ CREATE TABLE js_sys_area tree_leaf char(1) NOT NULL, tree_level decimal(4) NOT NULL, tree_names varchar(1000) NOT NULL, - area_name vargraphic(100) NOT NULL, + area_name varchar(100) NOT NULL, area_type char(1), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (area_code) ); @@ -127,25 +127,25 @@ CREATE TABLE js_sys_company tree_level decimal(4) NOT NULL, tree_names varchar(1000) NOT NULL, view_code varchar(100) NOT NULL, - company_name vargraphic(200) NOT NULL, - full_name vargraphic(200) NOT NULL, + company_name varchar(200) NOT NULL, + full_name varchar(200) NOT NULL, area_code varchar(100), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, - extend_s1 vargraphic(500), - extend_s2 vargraphic(500), - extend_s3 vargraphic(500), - extend_s4 vargraphic(500), - extend_s5 vargraphic(500), - extend_s6 vargraphic(500), - extend_s7 vargraphic(500), - extend_s8 vargraphic(500), + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, + extend_s1 varchar(500), + extend_s2 varchar(500), + extend_s3 varchar(500), + extend_s4 varchar(500), + extend_s5 varchar(500), + extend_s6 varchar(500), + extend_s7 varchar(500), + extend_s8 varchar(500), extend_i1 decimal(19), extend_i2 decimal(19), extend_i3 decimal(19), @@ -154,10 +154,10 @@ CREATE TABLE js_sys_company extend_f2 decimal(19,4), extend_f3 decimal(19,4), extend_f4 decimal(19,4), - extend_d1 timestamp, - extend_d2 timestamp, - extend_d3 timestamp, - extend_d4 timestamp, + extend_d1 datetime, + extend_d2 datetime, + extend_d3 datetime, + extend_d4 datetime, PRIMARY KEY (company_code) ); @@ -175,15 +175,15 @@ CREATE TABLE js_sys_company_office CREATE TABLE js_sys_config ( id varchar(64) NOT NULL, - config_name vargraphic(100) NOT NULL, + config_name varchar(100) NOT NULL, config_key varchar(100) NOT NULL, - config_value vargraphic(1000), + config_value varchar(1000), is_sys char(1) NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (id) ); @@ -199,29 +199,29 @@ CREATE TABLE js_sys_dict_data tree_leaf char(1) NOT NULL, tree_level decimal(4) NOT NULL, tree_names varchar(1000) NOT NULL, - dict_label vargraphic(100) NOT NULL, + dict_label varchar(100) NOT NULL, dict_value varchar(100) NOT NULL, dict_type varchar(100) NOT NULL, is_sys char(1) NOT NULL, - description vargraphic(500), - css_style vargraphic(500), - css_class vargraphic(500), + description varchar(500), + css_style varchar(500), + css_class varchar(500), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, - extend_s1 vargraphic(500), - extend_s2 vargraphic(500), - extend_s3 vargraphic(500), - extend_s4 vargraphic(500), - extend_s5 vargraphic(500), - extend_s6 vargraphic(500), - extend_s7 vargraphic(500), - extend_s8 vargraphic(500), + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, + extend_s1 varchar(500), + extend_s2 varchar(500), + extend_s3 varchar(500), + extend_s4 varchar(500), + extend_s5 varchar(500), + extend_s6 varchar(500), + extend_s7 varchar(500), + extend_s8 varchar(500), extend_i1 decimal(19), extend_i2 decimal(19), extend_i3 decimal(19), @@ -230,10 +230,10 @@ CREATE TABLE js_sys_dict_data extend_f2 decimal(19,4), extend_f3 decimal(19,4), extend_f4 decimal(19,4), - extend_d1 timestamp, - extend_d2 timestamp, - extend_d3 timestamp, - extend_d4 timestamp, + extend_d1 datetime, + extend_d2 datetime, + extend_d3 datetime, + extend_d4 datetime, PRIMARY KEY (dict_code) ); @@ -242,15 +242,15 @@ CREATE TABLE js_sys_dict_data CREATE TABLE js_sys_dict_type ( id varchar(64) NOT NULL, - dict_name vargraphic(100) NOT NULL, + dict_name varchar(100) NOT NULL, dict_type varchar(100) NOT NULL, is_sys char(1) NOT NULL, status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (id) ); @@ -259,20 +259,20 @@ CREATE TABLE js_sys_dict_type CREATE TABLE js_sys_employee ( emp_code varchar(64) NOT NULL, - emp_name vargraphic(100) NOT NULL, + emp_name varchar(100) NOT NULL, emp_name_en varchar(100), office_code varchar(64) NOT NULL, - office_name vargraphic(100) NOT NULL, + office_name varchar(100) NOT NULL, company_code varchar(64), - company_name vargraphic(200), + company_name varchar(200), status char(1) NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, PRIMARY KEY (emp_code) ); @@ -302,7 +302,7 @@ CREATE TABLE js_sys_file_entity ( file_id varchar(64) NOT NULL, file_md5 varchar(64) NOT NULL, - file_path vargraphic(1000) NOT NULL, + file_path varchar(1000) NOT NULL, file_content_type varchar(200) NOT NULL, file_extension varchar(100) NOT NULL, file_size decimal(31) NOT NULL, @@ -316,17 +316,17 @@ CREATE TABLE js_sys_file_upload ( id varchar(64) NOT NULL, file_id varchar(64) NOT NULL, - file_name vargraphic(500) NOT NULL, + file_name varchar(500) NOT NULL, file_type varchar(20) NOT NULL, file_sort decimal(10), biz_key varchar(64), biz_type varchar(64), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (id) ); @@ -336,18 +336,18 @@ CREATE TABLE js_sys_job ( job_name varchar(64) NOT NULL, job_group varchar(64) NOT NULL, - description vargraphic(100) NOT NULL, - invoke_target vargraphic(1000) NOT NULL, + description varchar(100) NOT NULL, + invoke_target varchar(1000) NOT NULL, cron_expression varchar(255) NOT NULL, misfire_instruction decimal(1) NOT NULL, concurrent char(1) NOT NULL, instance_name varchar(64) DEFAULT 'JeeSiteScheduler' NOT NULL, status char(1) NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (job_name, job_group) ); @@ -363,7 +363,7 @@ CREATE TABLE js_sys_job_log job_message varchar(500), is_exception char(1), exception_info clob, - create_date timestamp, + create_date datetime, PRIMARY KEY (id) ); @@ -373,14 +373,14 @@ CREATE TABLE js_sys_lang ( id varchar(64) NOT NULL, module_code varchar(64) NOT NULL, - lang_code vargraphic(500) NOT NULL, - lang_text vargraphic(500) NOT NULL, + lang_code varchar(500) NOT NULL, + lang_text varchar(500) NOT NULL, lang_type varchar(50) NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (id) ); @@ -390,11 +390,11 @@ CREATE TABLE js_sys_log ( id varchar(64) NOT NULL, log_type varchar(50) NOT NULL, - log_title vargraphic(500) NOT NULL, + log_title varchar(500) NOT NULL, create_by varchar(64) NOT NULL, - create_by_name vargraphic(100) NOT NULL, - create_date timestamp NOT NULL, - request_uri vargraphic(500), + create_by_name varchar(100) NOT NULL, + create_date datetime NOT NULL, + request_uri varchar(500), request_method varchar(10), request_params clob, diff_modify_data clob, @@ -404,12 +404,12 @@ CREATE TABLE js_sys_log server_addr varchar(255) NOT NULL, is_exception char(1), exception_info clob, - user_agent vargraphic(500), + user_agent varchar(500), device_name varchar(100), browser_name varchar(100), execute_time decimal(19), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, PRIMARY KEY (id) ); @@ -439,18 +439,18 @@ CREATE TABLE js_sys_menu module_codes varchar(500) NOT NULL, status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), - extend_s1 vargraphic(500), - extend_s2 vargraphic(500), - extend_s3 vargraphic(500), - extend_s4 vargraphic(500), - extend_s5 vargraphic(500), - extend_s6 vargraphic(500), - extend_s7 vargraphic(500), - extend_s8 vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), + extend_s1 varchar(500), + extend_s2 varchar(500), + extend_s3 varchar(500), + extend_s4 varchar(500), + extend_s5 varchar(500), + extend_s6 varchar(500), + extend_s7 varchar(500), + extend_s8 varchar(500), extend_i1 decimal(19), extend_i2 decimal(19), extend_i3 decimal(19), @@ -459,10 +459,10 @@ CREATE TABLE js_sys_menu extend_f2 decimal(19,4), extend_f3 decimal(19,4), extend_f4 decimal(19,4), - extend_d1 timestamp, - extend_d2 timestamp, - extend_d3 timestamp, - extend_d4 timestamp, + extend_d1 datetime, + extend_d2 datetime, + extend_d3 datetime, + extend_d4 datetime, PRIMARY KEY (menu_code) ); @@ -472,16 +472,16 @@ CREATE TABLE js_sys_module ( module_code varchar(64) NOT NULL, module_name varchar(100) NOT NULL, - description vargraphic(500), + description varchar(500), main_class_name varchar(500), current_version varchar(50), upgrade_info varchar(300), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (module_code) ); @@ -499,15 +499,15 @@ CREATE TABLE js_sys_msg_inner receive_names clob, send_user_code varchar(64), send_user_name varchar(100), - send_date timestamp, + send_date datetime, is_attac char(1), notify_types varchar(100), status char(1) NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (id) ); @@ -520,7 +520,7 @@ CREATE TABLE js_sys_msg_inner_record receive_user_code varchar(64) NOT NULL, receive_user_name varchar(100) NOT NULL, read_status char(1) NOT NULL, - read_date timestamp, + read_date datetime, is_star char(1), PRIMARY KEY (id) ); @@ -540,17 +540,17 @@ CREATE TABLE js_sys_msg_push receive_user_name varchar(100) NOT NULL, send_user_code varchar(64) NOT NULL, send_user_name varchar(100) NOT NULL, - send_date timestamp NOT NULL, + send_date datetime NOT NULL, is_merge_push char(1), - plan_push_date timestamp, + plan_push_date datetime, push_number int, push_return_code varchar(200), push_return_msg_id varchar(200), push_return_content clob, push_status char(1), - push_date timestamp, + push_date datetime, read_status char(1), - read_date timestamp, + read_date datetime, PRIMARY KEY (id) ); @@ -569,17 +569,17 @@ CREATE TABLE js_sys_msg_pushed receive_user_name varchar(100) NOT NULL, send_user_code varchar(64) NOT NULL, send_user_name varchar(100) NOT NULL, - send_date timestamp NOT NULL, + send_date datetime NOT NULL, is_merge_push char(1), - plan_push_date timestamp, + plan_push_date datetime, push_number int, push_return_content clob, push_return_code varchar(200), push_return_msg_id varchar(200), push_status char(1), - push_date timestamp, + push_date datetime, read_status char(1), - read_date timestamp, + read_date datetime, PRIMARY KEY (id) ); @@ -590,15 +590,15 @@ CREATE TABLE js_sys_msg_template id varchar(64) NOT NULL, module_code varchar(64), tpl_key varchar(100) NOT NULL, - tpl_name vargraphic(100) NOT NULL, + tpl_name varchar(100) NOT NULL, tpl_type varchar(16) NOT NULL, tpl_content clob NOT NULL, status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), PRIMARY KEY (id) ); @@ -615,7 +615,7 @@ CREATE TABLE js_sys_office tree_level decimal(4) NOT NULL, tree_names varchar(1000) NOT NULL, view_code varchar(100) NOT NULL, - office_name vargraphic(100) NOT NULL, + office_name varchar(100) NOT NULL, full_name varchar(200) NOT NULL, office_type char(1) NOT NULL, leader varchar(100), @@ -625,20 +625,20 @@ CREATE TABLE js_sys_office email varchar(300), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, - extend_s1 vargraphic(500), - extend_s2 vargraphic(500), - extend_s3 vargraphic(500), - extend_s4 vargraphic(500), - extend_s5 vargraphic(500), - extend_s6 vargraphic(500), - extend_s7 vargraphic(500), - extend_s8 vargraphic(500), + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, + extend_s1 varchar(500), + extend_s2 varchar(500), + extend_s3 varchar(500), + extend_s4 varchar(500), + extend_s5 varchar(500), + extend_s6 varchar(500), + extend_s7 varchar(500), + extend_s8 varchar(500), extend_i1 decimal(19), extend_i2 decimal(19), extend_i3 decimal(19), @@ -647,10 +647,10 @@ CREATE TABLE js_sys_office extend_f2 decimal(19,4), extend_f3 decimal(19,4), extend_f4 decimal(19,4), - extend_d1 timestamp, - extend_d2 timestamp, - extend_d3 timestamp, - extend_d4 timestamp, + extend_d1 datetime, + extend_d2 datetime, + extend_d3 datetime, + extend_d4 datetime, PRIMARY KEY (office_code) ); @@ -664,12 +664,12 @@ CREATE TABLE js_sys_post post_sort decimal(10), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, PRIMARY KEY (post_code) ); @@ -687,20 +687,20 @@ CREATE TABLE js_sys_role biz_scope varchar(255), status char(1) DEFAULT '0' NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, - extend_s1 vargraphic(500), - extend_s2 vargraphic(500), - extend_s3 vargraphic(500), - extend_s4 vargraphic(500), - extend_s5 vargraphic(500), - extend_s6 vargraphic(500), - extend_s7 vargraphic(500), - extend_s8 vargraphic(500), + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, + extend_s1 varchar(500), + extend_s2 varchar(500), + extend_s3 varchar(500), + extend_s4 varchar(500), + extend_s5 varchar(500), + extend_s6 varchar(500), + extend_s7 varchar(500), + extend_s8 varchar(500), extend_i1 decimal(19), extend_i2 decimal(19), extend_i3 decimal(19), @@ -709,10 +709,10 @@ CREATE TABLE js_sys_role extend_f2 decimal(19,4), extend_f3 decimal(19,4), extend_f4 decimal(19,4), - extend_d1 timestamp, - extend_d2 timestamp, - extend_d3 timestamp, - extend_d4 timestamp, + extend_d1 datetime, + extend_d2 datetime, + extend_d3 datetime, + extend_d4 datetime, PRIMARY KEY (role_code) ); @@ -749,7 +749,7 @@ CREATE TABLE js_sys_user phone varchar(100), sex char(1), avatar varchar(1000), - sign vargraphic(200), + sign varchar(200), wx_openid varchar(100), mobile_imei varchar(100), user_type varchar(16) NOT NULL, @@ -757,7 +757,7 @@ CREATE TABLE js_sys_user ref_name varchar(100), mgr_type char(1) NOT NULL, pwd_security_level decimal(1), - pwd_update_date timestamp, + pwd_update_date datetime, pwd_update_record varchar(1000), pwd_question varchar(200), pwd_question_answer varchar(200), @@ -765,28 +765,28 @@ CREATE TABLE js_sys_user pwd_question_answer_2 varchar(200), pwd_question_3 varchar(200), pwd_question_answer_3 varchar(200), - pwd_quest_update_date timestamp, + pwd_quest_update_date datetime, last_login_ip varchar(100), - last_login_date timestamp, - freeze_date timestamp, + last_login_date datetime, + freeze_date datetime, freeze_cause varchar(200), user_weight decimal(8) DEFAULT 0, status char NOT NULL, create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, + create_date datetime NOT NULL, update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), + update_date datetime NOT NULL, + remarks varchar(500), corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, - extend_s1 vargraphic(500), - extend_s2 vargraphic(500), - extend_s3 vargraphic(500), - extend_s4 vargraphic(500), - extend_s5 vargraphic(500), - extend_s6 vargraphic(500), - extend_s7 vargraphic(500), - extend_s8 vargraphic(500), + corp_name varchar(100) DEFAULT 'JeeSite' NOT NULL, + extend_s1 varchar(500), + extend_s2 varchar(500), + extend_s3 varchar(500), + extend_s4 varchar(500), + extend_s5 varchar(500), + extend_s6 varchar(500), + extend_s7 varchar(500), + extend_s8 varchar(500), extend_i1 decimal(19), extend_i2 decimal(19), extend_i3 decimal(19), @@ -795,10 +795,10 @@ CREATE TABLE js_sys_user extend_f2 decimal(19,4), extend_f3 decimal(19,4), extend_f4 decimal(19,4), - extend_d1 timestamp, - extend_d2 timestamp, - extend_d3 timestamp, - extend_d4 timestamp, + extend_d1 datetime, + extend_d2 datetime, + extend_d3 datetime, + extend_d4 datetime, PRIMARY KEY (user_code) ); diff --git a/modules/core/db/h2/job.sql b/modules/core/db/h2/job.sql new file mode 100644 index 00000000..a493ea2a --- /dev/null +++ b/modules/core/db/h2/job.sql @@ -0,0 +1,249 @@ +-- Thanks to Amir Kibbar and Peter Rietzler for contributing the schema for H2 database, +-- and verifying that it works with Quartz's StdJDBCDelegate +-- +-- Note, Quartz depends on row-level locking which means you must use the MVCC=TRUE +-- setting on your H2 database, or you will experience dead-locks +-- +-- +-- In your Quartz properties file, you'll need to set +-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate + +CREATE TABLE js_job_CALENDARS ( + SCHED_NAME VARCHAR(120) NOT NULL, + CALENDAR_NAME VARCHAR (200) NOT NULL , + CALENDAR IMAGE NOT NULL +); + +CREATE TABLE js_job_CRON_TRIGGERS ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR (200) NOT NULL , + TRIGGER_GROUP VARCHAR (200) NOT NULL , + CRON_EXPRESSION VARCHAR (120) NOT NULL , + TIME_ZONE_ID VARCHAR (80) +); + +CREATE TABLE js_job_FIRED_TRIGGERS ( + SCHED_NAME VARCHAR(120) NOT NULL, + ENTRY_ID VARCHAR (95) NOT NULL , + TRIGGER_NAME VARCHAR (200) NOT NULL , + TRIGGER_GROUP VARCHAR (200) NOT NULL , + INSTANCE_NAME VARCHAR (200) NOT NULL , + FIRED_TIME BIGINT NOT NULL , + SCHED_TIME BIGINT NOT NULL , + PRIORITY INTEGER NOT NULL , + STATE VARCHAR (16) NOT NULL, + JOB_NAME VARCHAR (200) NULL , + JOB_GROUP VARCHAR (200) NULL , + IS_NONCONCURRENT BOOLEAN NULL , + REQUESTS_RECOVERY BOOLEAN NULL +); + +CREATE TABLE js_job_PAUSED_TRIGGER_GRPS ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_GROUP VARCHAR (200) NOT NULL +); + +CREATE TABLE js_job_SCHEDULER_STATE ( + SCHED_NAME VARCHAR(120) NOT NULL, + INSTANCE_NAME VARCHAR (200) NOT NULL , + LAST_CHECKIN_TIME BIGINT NOT NULL , + CHECKIN_INTERVAL BIGINT NOT NULL +); + +CREATE TABLE js_job_LOCKS ( + SCHED_NAME VARCHAR(120) NOT NULL, + LOCK_NAME VARCHAR (40) NOT NULL +); + +CREATE TABLE js_job_JOB_DETAILS ( + SCHED_NAME VARCHAR(120) NOT NULL, + JOB_NAME VARCHAR (200) NOT NULL , + JOB_GROUP VARCHAR (200) NOT NULL , + DESCRIPTION VARCHAR (250) NULL , + JOB_CLASS_NAME VARCHAR (250) NOT NULL , + IS_DURABLE BOOLEAN NOT NULL , + IS_NONCONCURRENT BOOLEAN NOT NULL , + IS_UPDATE_DATA BOOLEAN NOT NULL , + REQUESTS_RECOVERY BOOLEAN NOT NULL , + JOB_DATA IMAGE NULL +); + +CREATE TABLE js_job_SIMPLE_TRIGGERS ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR (200) NOT NULL , + TRIGGER_GROUP VARCHAR (200) NOT NULL , + REPEAT_COUNT BIGINT NOT NULL , + REPEAT_INTERVAL BIGINT NOT NULL , + TIMES_TRIGGERED BIGINT NOT NULL +); + +CREATE TABLE js_job_simprop_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + STR_PROP_1 VARCHAR(512) NULL, + STR_PROP_2 VARCHAR(512) NULL, + STR_PROP_3 VARCHAR(512) NULL, + INT_PROP_1 INTEGER NULL, + INT_PROP_2 INTEGER NULL, + LONG_PROP_1 BIGINT NULL, + LONG_PROP_2 BIGINT NULL, + DEC_PROP_1 NUMERIC(13,4) NULL, + DEC_PROP_2 NUMERIC(13,4) NULL, + BOOL_PROP_1 BOOLEAN NULL, + BOOL_PROP_2 BOOLEAN NULL, +); + +CREATE TABLE js_job_BLOB_TRIGGERS ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR (200) NOT NULL , + TRIGGER_GROUP VARCHAR (200) NOT NULL , + BLOB_DATA IMAGE NULL +); + +CREATE TABLE js_job_TRIGGERS ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR (200) NOT NULL , + TRIGGER_GROUP VARCHAR (200) NOT NULL , + JOB_NAME VARCHAR (200) NOT NULL , + JOB_GROUP VARCHAR (200) NOT NULL , + DESCRIPTION VARCHAR (250) NULL , + NEXT_FIRE_TIME BIGINT NULL , + PREV_FIRE_TIME BIGINT NULL , + PRIORITY INTEGER NULL , + TRIGGER_STATE VARCHAR (16) NOT NULL , + TRIGGER_TYPE VARCHAR (8) NOT NULL , + START_TIME BIGINT NOT NULL , + END_TIME BIGINT NULL , + CALENDAR_NAME VARCHAR (200) NULL , + MISFIRE_INSTR SMALLINT NULL , + JOB_DATA IMAGE NULL +); + +ALTER TABLE js_job_CALENDARS ADD + CONSTRAINT PK_js_job_CALENDARS PRIMARY KEY + ( + SCHED_NAME, + CALENDAR_NAME + ); + +ALTER TABLE js_job_CRON_TRIGGERS ADD + CONSTRAINT PK_js_job_CRON_TRIGGERS PRIMARY KEY + ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ); + +ALTER TABLE js_job_FIRED_TRIGGERS ADD + CONSTRAINT PK_js_job_FIRED_TRIGGERS PRIMARY KEY + ( + SCHED_NAME, + ENTRY_ID + ); + +ALTER TABLE js_job_PAUSED_TRIGGER_GRPS ADD + CONSTRAINT PK_js_job_PAUSED_TRIGGER_GRPS PRIMARY KEY + ( + SCHED_NAME, + TRIGGER_GROUP + ); + +ALTER TABLE js_job_SCHEDULER_STATE ADD + CONSTRAINT PK_js_job_SCHEDULER_STATE PRIMARY KEY + ( + SCHED_NAME, + INSTANCE_NAME + ); + +ALTER TABLE js_job_LOCKS ADD + CONSTRAINT PK_js_job_LOCKS PRIMARY KEY + ( + SCHED_NAME, + LOCK_NAME + ); + +ALTER TABLE js_job_JOB_DETAILS ADD + CONSTRAINT PK_js_job_JOB_DETAILS PRIMARY KEY + ( + SCHED_NAME, + JOB_NAME, + JOB_GROUP + ); + +ALTER TABLE js_job_SIMPLE_TRIGGERS ADD + CONSTRAINT PK_js_job_SIMPLE_TRIGGERS PRIMARY KEY + ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ); + +ALTER TABLE js_job_SIMPROP_TRIGGERS ADD + CONSTRAINT PK_js_job_SIMPROP_TRIGGERS PRIMARY KEY + ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ); + +ALTER TABLE js_job_TRIGGERS ADD + CONSTRAINT PK_js_job_TRIGGERS PRIMARY KEY + ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ); + +ALTER TABLE js_job_CRON_TRIGGERS ADD + CONSTRAINT FK_js_job_CRON_TRIGGERS_js_job_TRIGGERS FOREIGN KEY + ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ) REFERENCES js_job_TRIGGERS ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ) ON DELETE CASCADE; + + +ALTER TABLE js_job_SIMPLE_TRIGGERS ADD + CONSTRAINT FK_js_job_SIMPLE_TRIGGERS_js_job_TRIGGERS FOREIGN KEY + ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ) REFERENCES js_job_TRIGGERS ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ) ON DELETE CASCADE; + +ALTER TABLE js_job_SIMPROP_TRIGGERS ADD + CONSTRAINT FK_js_job_SIMPROP_TRIGGERS_js_job_TRIGGERS FOREIGN KEY + ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ) REFERENCES js_job_TRIGGERS ( + SCHED_NAME, + TRIGGER_NAME, + TRIGGER_GROUP + ) ON DELETE CASCADE; + + +ALTER TABLE js_job_TRIGGERS ADD + CONSTRAINT FK_js_job_TRIGGERS_js_job_JOB_DETAILS FOREIGN KEY + ( + SCHED_NAME, + JOB_NAME, + JOB_GROUP + ) REFERENCES js_job_JOB_DETAILS ( + SCHED_NAME, + JOB_NAME, + JOB_GROUP + ); + +COMMIT; diff --git a/modules/core/db/mssql/job.sql b/modules/core/db/mssql/job.sql new file mode 100644 index 00000000..90e1699d --- /dev/null +++ b/modules/core/db/mssql/job.sql @@ -0,0 +1,346 @@ +--# thanks to George Papastamatopoulos for submitting this ... and Marko Lahma for +--# updating it. +--# +--# In your Quartz properties file, you'll need to set +--# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.MSSQLDelegate +--# +--# you shouse enter your DB instance's name on the next line in place of "enter_db_name_here" +--# +--# +--# From a helpful (but anonymous) Quartz user: +--# +--# Regarding this error message: +--# +--# [Microsoft][SQLServer 2000 Driver for JDBC]Can't start a cloned connection while in manual transaction mode. +--# +--# +--# I added "SelectMethod=cursor;" to my Connection URL in the config file. +--# It Seems to work, hopefully no side effects. +--# +--# example: +--# "jdbc:microsoft:sqlserver://dbmachine:1433;SelectMethod=cursor"; +--# +--# Another user has pointed out that you will probably need to use the +--# JTDS driver +--# + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_TRIGGERS_QRTZ_JOB_DETAILS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) +ALTER TABLE [dbo].[js_job_TRIGGERS] DROP CONSTRAINT FK_QRTZ_TRIGGERS_QRTZ_JOB_DETAILS +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_CRON_TRIGGERS_QRTZ_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) +ALTER TABLE [dbo].[js_job_CRON_TRIGGERS] DROP CONSTRAINT FK_QRTZ_CRON_TRIGGERS_QRTZ_TRIGGERS +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_SIMPLE_TRIGGERS_QRTZ_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) +ALTER TABLE [dbo].[js_job_SIMPLE_TRIGGERS] DROP CONSTRAINT FK_QRTZ_SIMPLE_TRIGGERS_QRTZ_TRIGGERS +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_SIMPROP_TRIGGERS_QRTZ_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) +ALTER TABLE [dbo].[js_job_SIMPROP_TRIGGERS] DROP CONSTRAINT FK_QRTZ_SIMPROP_TRIGGERS_QRTZ_TRIGGERS +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_CALENDARS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_CALENDARS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_CRON_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_CRON_TRIGGERS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_BLOB_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_BLOB_TRIGGERS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_FIRED_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_FIRED_TRIGGERS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_PAUSED_TRIGGER_GRPS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_PAUSED_TRIGGER_GRPS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_SCHEDULER_STATE]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_SCHEDULER_STATE] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_LOCKS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_LOCKS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_JOB_DETAILS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_JOB_DETAILS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_SIMPLE_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_SIMPLE_TRIGGERS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_SIMPROP_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_SIMPROP_TRIGGERS] +; + +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[js_job_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) +DROP TABLE [dbo].[js_job_TRIGGERS] +; + +CREATE TABLE [dbo].[js_job_CALENDARS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [CALENDAR_NAME] [VARCHAR] (200) NOT NULL , + [CALENDAR] [IMAGE] NOT NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_CRON_TRIGGERS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [TRIGGER_NAME] [VARCHAR] (200) NOT NULL , + [TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , + [CRON_EXPRESSION] [VARCHAR] (120) NOT NULL , + [TIME_ZONE_ID] [VARCHAR] (80) +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_FIRED_TRIGGERS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [ENTRY_ID] [VARCHAR] (95) NOT NULL , + [TRIGGER_NAME] [VARCHAR] (200) NOT NULL , + [TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , + [INSTANCE_NAME] [VARCHAR] (200) NOT NULL , + [FIRED_TIME] [BIGINT] NOT NULL , + [SCHED_TIME] [BIGINT] NOT NULL , + [PRIORITY] [INTEGER] NOT NULL , + [STATE] [VARCHAR] (16) NOT NULL, + [JOB_NAME] [VARCHAR] (200) NULL , + [JOB_GROUP] [VARCHAR] (200) NULL , + [IS_NONCONCURRENT] [VARCHAR] (1) NULL , + [REQUESTS_RECOVERY] [VARCHAR] (1) NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_PAUSED_TRIGGER_GRPS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [TRIGGER_GROUP] [VARCHAR] (200) NOT NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_SCHEDULER_STATE] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [INSTANCE_NAME] [VARCHAR] (200) NOT NULL , + [LAST_CHECKIN_TIME] [BIGINT] NOT NULL , + [CHECKIN_INTERVAL] [BIGINT] NOT NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_LOCKS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [LOCK_NAME] [VARCHAR] (40) NOT NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_JOB_DETAILS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [JOB_NAME] [VARCHAR] (200) NOT NULL , + [JOB_GROUP] [VARCHAR] (200) NOT NULL , + [DESCRIPTION] [VARCHAR] (250) NULL , + [JOB_CLASS_NAME] [VARCHAR] (250) NOT NULL , + [IS_DURABLE] [VARCHAR] (1) NOT NULL , + [IS_NONCONCURRENT] [VARCHAR] (1) NOT NULL , + [IS_UPDATE_DATA] [VARCHAR] (1) NOT NULL , + [REQUESTS_RECOVERY] [VARCHAR] (1) NOT NULL , + [JOB_DATA] [IMAGE] NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_SIMPLE_TRIGGERS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [TRIGGER_NAME] [VARCHAR] (200) NOT NULL , + [TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , + [REPEAT_COUNT] [BIGINT] NOT NULL , + [REPEAT_INTERVAL] [BIGINT] NOT NULL , + [TIMES_TRIGGERED] [BIGINT] NOT NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_SIMPROP_TRIGGERS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [TRIGGER_NAME] [VARCHAR] (200) NOT NULL , + [TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , + [STR_PROP_1] [VARCHAR] (512) NULL, + [STR_PROP_2] [VARCHAR] (512) NULL, + [STR_PROP_3] [VARCHAR] (512) NULL, + [INT_PROP_1] [INT] NULL, + [INT_PROP_2] [INT] NULL, + [LONG_PROP_1] [BIGINT] NULL, + [LONG_PROP_2] [BIGINT] NULL, + [DEC_PROP_1] [NUMERIC] (13,4) NULL, + [DEC_PROP_2] [NUMERIC] (13,4) NULL, + [BOOL_PROP_1] [VARCHAR] (1) NULL, + [BOOL_PROP_2] [VARCHAR] (1) NULL, +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_BLOB_TRIGGERS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [TRIGGER_NAME] [VARCHAR] (200) NOT NULL , + [TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , + [BLOB_DATA] [IMAGE] NULL +) ON [PRIMARY] +; + +CREATE TABLE [dbo].[js_job_TRIGGERS] ( + [SCHED_NAME] [VARCHAR] (120) NOT NULL , + [TRIGGER_NAME] [VARCHAR] (200) NOT NULL , + [TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , + [JOB_NAME] [VARCHAR] (200) NOT NULL , + [JOB_GROUP] [VARCHAR] (200) NOT NULL , + [DESCRIPTION] [VARCHAR] (250) NULL , + [NEXT_FIRE_TIME] [BIGINT] NULL , + [PREV_FIRE_TIME] [BIGINT] NULL , + [PRIORITY] [INTEGER] NULL , + [TRIGGER_STATE] [VARCHAR] (16) NOT NULL , + [TRIGGER_TYPE] [VARCHAR] (8) NOT NULL , + [START_TIME] [BIGINT] NOT NULL , + [END_TIME] [BIGINT] NULL , + [CALENDAR_NAME] [VARCHAR] (200) NULL , + [MISFIRE_INSTR] [SMALLINT] NULL , + [JOB_DATA] [IMAGE] NULL +) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_CALENDARS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_CALENDARS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [CALENDAR_NAME] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_CRON_TRIGGERS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_CRON_TRIGGERS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_FIRED_TRIGGERS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_FIRED_TRIGGERS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [ENTRY_ID] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_PAUSED_TRIGGER_GRPS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_PAUSED_TRIGGER_GRPS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [TRIGGER_GROUP] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_SCHEDULER_STATE] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_SCHEDULER_STATE] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [INSTANCE_NAME] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_LOCKS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_LOCKS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [LOCK_NAME] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_JOB_DETAILS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_JOB_DETAILS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [JOB_NAME], + [JOB_GROUP] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_SIMPLE_TRIGGERS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_SIMPLE_TRIGGERS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_SIMPROP_TRIGGERS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_SIMPROP_TRIGGERS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_TRIGGERS] WITH NOCHECK ADD + CONSTRAINT [PK_QRTZ_TRIGGERS] PRIMARY KEY CLUSTERED + ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) ON [PRIMARY] +; + +ALTER TABLE [dbo].[js_job_CRON_TRIGGERS] ADD + CONSTRAINT [FK_QRTZ_CRON_TRIGGERS_QRTZ_TRIGGERS] FOREIGN KEY + ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) REFERENCES [dbo].[js_job_TRIGGERS] ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) ON DELETE CASCADE +; + +ALTER TABLE [dbo].[js_job_SIMPLE_TRIGGERS] ADD + CONSTRAINT [FK_QRTZ_SIMPLE_TRIGGERS_QRTZ_TRIGGERS] FOREIGN KEY + ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) REFERENCES [dbo].[js_job_TRIGGERS] ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) ON DELETE CASCADE +; + +ALTER TABLE [dbo].[js_job_SIMPROP_TRIGGERS] ADD + CONSTRAINT [FK_QRTZ_SIMPROP_TRIGGERS_QRTZ_TRIGGERS] FOREIGN KEY + ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) REFERENCES [dbo].[js_job_TRIGGERS] ( + [SCHED_NAME], + [TRIGGER_NAME], + [TRIGGER_GROUP] + ) ON DELETE CASCADE +; + +ALTER TABLE [dbo].[js_job_TRIGGERS] ADD + CONSTRAINT [FK_QRTZ_TRIGGERS_QRTZ_JOB_DETAILS] FOREIGN KEY + ( + [SCHED_NAME], + [JOB_NAME], + [JOB_GROUP] + ) REFERENCES [dbo].[js_job_JOB_DETAILS] ( + [SCHED_NAME], + [JOB_NAME], + [JOB_GROUP] + ) +; + diff --git a/modules/core/db/mysql/job.sql b/modules/core/db/mysql/job.sql new file mode 100644 index 00000000..0a7597db --- /dev/null +++ b/modules/core/db/mysql/job.sql @@ -0,0 +1,179 @@ +-- +-- In your Quartz properties file, you'll need to set +-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate +-- +-- +-- By: Ron Cordell - roncordell +-- I didn't see this anywhere, so I thought I'd post it here. This is the script from Quartz to create the tables in a MySQL database, modified to use INNODB instead of MYISAM. + +DROP TABLE IF EXISTS js_job_FIRED_TRIGGERS; +DROP TABLE IF EXISTS js_job_PAUSED_TRIGGER_GRPS; +DROP TABLE IF EXISTS js_job_SCHEDULER_STATE; +DROP TABLE IF EXISTS js_job_LOCKS; +DROP TABLE IF EXISTS js_job_SIMPLE_TRIGGERS; +DROP TABLE IF EXISTS js_job_SIMPROP_TRIGGERS; +DROP TABLE IF EXISTS js_job_CRON_TRIGGERS; +DROP TABLE IF EXISTS js_job_BLOB_TRIGGERS; +DROP TABLE IF EXISTS js_job_TRIGGERS; +DROP TABLE IF EXISTS js_job_JOB_DETAILS; +DROP TABLE IF EXISTS js_job_CALENDARS; + +CREATE TABLE js_job_JOB_DETAILS( +SCHED_NAME VARCHAR(120) NOT NULL, +JOB_NAME VARCHAR(200) NOT NULL, +JOB_GROUP VARCHAR(200) NOT NULL, +DESCRIPTION VARCHAR(250) NULL, +JOB_CLASS_NAME VARCHAR(250) NOT NULL, +IS_DURABLE VARCHAR(1) NOT NULL, +IS_NONCONCURRENT VARCHAR(1) NOT NULL, +IS_UPDATE_DATA VARCHAR(1) NOT NULL, +REQUESTS_RECOVERY VARCHAR(1) NOT NULL, +JOB_DATA BLOB NULL, +PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE js_job_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(200) NOT NULL, +TRIGGER_GROUP VARCHAR(200) NOT NULL, +JOB_NAME VARCHAR(200) NOT NULL, +JOB_GROUP VARCHAR(200) NOT NULL, +DESCRIPTION VARCHAR(250) NULL, +NEXT_FIRE_TIME BIGINT(13) NULL, +PREV_FIRE_TIME BIGINT(13) NULL, +PRIORITY INTEGER NULL, +TRIGGER_STATE VARCHAR(16) NOT NULL, +TRIGGER_TYPE VARCHAR(8) NOT NULL, +START_TIME BIGINT(13) NOT NULL, +END_TIME BIGINT(13) NULL, +CALENDAR_NAME VARCHAR(200) NULL, +MISFIRE_INSTR SMALLINT(2) NULL, +JOB_DATA BLOB NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) +REFERENCES js_job_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE js_job_SIMPLE_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(200) NOT NULL, +TRIGGER_GROUP VARCHAR(200) NOT NULL, +REPEAT_COUNT BIGINT(7) NOT NULL, +REPEAT_INTERVAL BIGINT(12) NOT NULL, +TIMES_TRIGGERED BIGINT(10) NOT NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE js_job_CRON_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(200) NOT NULL, +TRIGGER_GROUP VARCHAR(200) NOT NULL, +CRON_EXPRESSION VARCHAR(120) NOT NULL, +TIME_ZONE_ID VARCHAR(80), +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE js_job_SIMPROP_TRIGGERS + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + STR_PROP_1 VARCHAR(512) NULL, + STR_PROP_2 VARCHAR(512) NULL, + STR_PROP_3 VARCHAR(512) NULL, + INT_PROP_1 INT NULL, + INT_PROP_2 INT NULL, + LONG_PROP_1 BIGINT NULL, + LONG_PROP_2 BIGINT NULL, + DEC_PROP_1 NUMERIC(13,4) NULL, + DEC_PROP_2 NUMERIC(13,4) NULL, + BOOL_PROP_1 VARCHAR(1) NULL, + BOOL_PROP_2 VARCHAR(1) NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE js_job_BLOB_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(200) NOT NULL, +TRIGGER_GROUP VARCHAR(200) NOT NULL, +BLOB_DATA BLOB NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +INDEX (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP), +FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE js_job_CALENDARS ( +SCHED_NAME VARCHAR(120) NOT NULL, +CALENDAR_NAME VARCHAR(200) NOT NULL, +CALENDAR BLOB NOT NULL, +PRIMARY KEY (SCHED_NAME,CALENDAR_NAME)) +ENGINE=InnoDB; + +CREATE TABLE js_job_PAUSED_TRIGGER_GRPS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_GROUP VARCHAR(200) NOT NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE js_job_FIRED_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +ENTRY_ID VARCHAR(95) NOT NULL, +TRIGGER_NAME VARCHAR(200) NOT NULL, +TRIGGER_GROUP VARCHAR(200) NOT NULL, +INSTANCE_NAME VARCHAR(200) NOT NULL, +FIRED_TIME BIGINT(13) NOT NULL, +SCHED_TIME BIGINT(13) NOT NULL, +PRIORITY INTEGER NOT NULL, +STATE VARCHAR(16) NOT NULL, +JOB_NAME VARCHAR(200) NULL, +JOB_GROUP VARCHAR(200) NULL, +IS_NONCONCURRENT VARCHAR(1) NULL, +REQUESTS_RECOVERY VARCHAR(1) NULL, +PRIMARY KEY (SCHED_NAME,ENTRY_ID)) +ENGINE=InnoDB; + +CREATE TABLE js_job_SCHEDULER_STATE ( +SCHED_NAME VARCHAR(120) NOT NULL, +INSTANCE_NAME VARCHAR(200) NOT NULL, +LAST_CHECKIN_TIME BIGINT(13) NOT NULL, +CHECKIN_INTERVAL BIGINT(13) NOT NULL, +PRIMARY KEY (SCHED_NAME,INSTANCE_NAME)) +ENGINE=InnoDB; + +CREATE TABLE js_job_LOCKS ( +SCHED_NAME VARCHAR(120) NOT NULL, +LOCK_NAME VARCHAR(40) NOT NULL, +PRIMARY KEY (SCHED_NAME,LOCK_NAME)) +ENGINE=InnoDB; + +CREATE INDEX IDX_QRTZ_J_REQ_RECOVERY ON js_job_JOB_DETAILS(SCHED_NAME,REQUESTS_RECOVERY); +CREATE INDEX IDX_QRTZ_J_GRP ON js_job_JOB_DETAILS(SCHED_NAME,JOB_GROUP); + +CREATE INDEX IDX_QRTZ_T_J ON js_job_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP); +CREATE INDEX IDX_QRTZ_T_JG ON js_job_TRIGGERS(SCHED_NAME,JOB_GROUP); +CREATE INDEX IDX_QRTZ_T_C ON js_job_TRIGGERS(SCHED_NAME,CALENDAR_NAME); +CREATE INDEX IDX_QRTZ_T_G ON js_job_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); +CREATE INDEX IDX_QRTZ_T_STATE ON js_job_TRIGGERS(SCHED_NAME,TRIGGER_STATE); +CREATE INDEX IDX_QRTZ_T_N_STATE ON js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); +CREATE INDEX IDX_QRTZ_T_N_G_STATE ON js_job_TRIGGERS(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); +CREATE INDEX IDX_QRTZ_T_NEXT_FIRE_TIME ON js_job_TRIGGERS(SCHED_NAME,NEXT_FIRE_TIME); +CREATE INDEX IDX_QRTZ_T_NFT_ST ON js_job_TRIGGERS(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); +CREATE INDEX IDX_QRTZ_T_NFT_MISFIRE ON js_job_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); +CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE ON js_job_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); +CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE_GRP ON js_job_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); + +CREATE INDEX IDX_QRTZ_FT_TRIG_INST_NAME ON js_job_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME); +CREATE INDEX IDX_QRTZ_FT_INST_JOB_REQ_RCVRY ON js_job_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); +CREATE INDEX IDX_QRTZ_FT_J_G ON js_job_FIRED_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP); +CREATE INDEX IDX_QRTZ_FT_JG ON js_job_FIRED_TRIGGERS(SCHED_NAME,JOB_GROUP); +CREATE INDEX IDX_QRTZ_FT_T_G ON js_job_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); +CREATE INDEX IDX_QRTZ_FT_TG ON js_job_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); + +commit; diff --git a/modules/core/db/oracle/job.sql b/modules/core/db/oracle/job.sql new file mode 100644 index 00000000..47221018 --- /dev/null +++ b/modules/core/db/oracle/job.sql @@ -0,0 +1,193 @@ +-- +-- A hint submitted by a user: Oracle DB MUST be created as "shared" and the +-- job_queue_processes parameter must be greater than 2 +-- However, these settings are pretty much standard after any +-- Oracle install, so most users need not worry about this. +-- +-- Many other users (including the primary author of Quartz) have had success +-- runing in dedicated mode, so only consider the above as a hint ;-) +-- + +delete from js_job_fired_triggers; +delete from js_job_simple_triggers; +delete from js_job_simprop_triggers; +delete from js_job_cron_triggers; +delete from js_job_blob_triggers; +delete from js_job_triggers; +delete from js_job_job_details; +delete from js_job_calendars; +delete from js_job_paused_trigger_grps; +delete from js_job_locks; +delete from js_job_scheduler_state; + +drop table js_job_calendars; +drop table js_job_fired_triggers; +drop table js_job_blob_triggers; +drop table js_job_cron_triggers; +drop table js_job_simple_triggers; +drop table js_job_simprop_triggers; +drop table js_job_triggers; +drop table js_job_job_details; +drop table js_job_paused_trigger_grps; +drop table js_job_locks; +drop table js_job_scheduler_state; + + +CREATE TABLE js_job_job_details + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + JOB_NAME VARCHAR2(200) NOT NULL, + JOB_GROUP VARCHAR2(200) NOT NULL, + DESCRIPTION VARCHAR2(250) NULL, + JOB_CLASS_NAME VARCHAR2(250) NOT NULL, + IS_DURABLE VARCHAR2(1) NOT NULL, + IS_NONCONCURRENT VARCHAR2(1) NOT NULL, + IS_UPDATE_DATA VARCHAR2(1) NOT NULL, + REQUESTS_RECOVERY VARCHAR2(1) NOT NULL, + JOB_DATA BLOB NULL, + CONSTRAINT js_job_JOB_DETAILS_PK PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) +); +CREATE TABLE js_job_triggers + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + TRIGGER_NAME VARCHAR2(200) NOT NULL, + TRIGGER_GROUP VARCHAR2(200) NOT NULL, + JOB_NAME VARCHAR2(200) NOT NULL, + JOB_GROUP VARCHAR2(200) NOT NULL, + DESCRIPTION VARCHAR2(250) NULL, + NEXT_FIRE_TIME NUMBER(13) NULL, + PREV_FIRE_TIME NUMBER(13) NULL, + PRIORITY NUMBER(13) NULL, + TRIGGER_STATE VARCHAR2(16) NOT NULL, + TRIGGER_TYPE VARCHAR2(8) NOT NULL, + START_TIME NUMBER(13) NOT NULL, + END_TIME NUMBER(13) NULL, + CALENDAR_NAME VARCHAR2(200) NULL, + MISFIRE_INSTR NUMBER(2) NULL, + JOB_DATA BLOB NULL, + CONSTRAINT js_job_TRIGGERS_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + CONSTRAINT js_job_TRIGGER_TO_JOBS_FK FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) + REFERENCES js_job_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) +); +CREATE TABLE js_job_simple_triggers + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + TRIGGER_NAME VARCHAR2(200) NOT NULL, + TRIGGER_GROUP VARCHAR2(200) NOT NULL, + REPEAT_COUNT NUMBER(7) NOT NULL, + REPEAT_INTERVAL NUMBER(12) NOT NULL, + TIMES_TRIGGERED NUMBER(10) NOT NULL, + CONSTRAINT js_job_SIMPLE_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + CONSTRAINT js_job_SIMPLE_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); +CREATE TABLE js_job_cron_triggers + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + TRIGGER_NAME VARCHAR2(200) NOT NULL, + TRIGGER_GROUP VARCHAR2(200) NOT NULL, + CRON_EXPRESSION VARCHAR2(120) NOT NULL, + TIME_ZONE_ID VARCHAR2(80), + CONSTRAINT js_job_CRON_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + CONSTRAINT js_job_CRON_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); +CREATE TABLE js_job_simprop_triggers + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + TRIGGER_NAME VARCHAR2(200) NOT NULL, + TRIGGER_GROUP VARCHAR2(200) NOT NULL, + STR_PROP_1 VARCHAR2(512) NULL, + STR_PROP_2 VARCHAR2(512) NULL, + STR_PROP_3 VARCHAR2(512) NULL, + INT_PROP_1 NUMBER(10) NULL, + INT_PROP_2 NUMBER(10) NULL, + LONG_PROP_1 NUMBER(13) NULL, + LONG_PROP_2 NUMBER(13) NULL, + DEC_PROP_1 NUMERIC(13,4) NULL, + DEC_PROP_2 NUMERIC(13,4) NULL, + BOOL_PROP_1 VARCHAR2(1) NULL, + BOOL_PROP_2 VARCHAR2(1) NULL, + CONSTRAINT js_job_SIMPROP_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + CONSTRAINT js_job_SIMPROP_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); +CREATE TABLE js_job_blob_triggers + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + TRIGGER_NAME VARCHAR2(200) NOT NULL, + TRIGGER_GROUP VARCHAR2(200) NOT NULL, + BLOB_DATA BLOB NULL, + CONSTRAINT js_job_BLOB_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + CONSTRAINT js_job_BLOB_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); +CREATE TABLE js_job_calendars + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + CALENDAR_NAME VARCHAR2(200) NOT NULL, + CALENDAR BLOB NOT NULL, + CONSTRAINT js_job_CALENDARS_PK PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) +); +CREATE TABLE js_job_paused_trigger_grps + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + TRIGGER_GROUP VARCHAR2(200) NOT NULL, + CONSTRAINT js_job_PAUSED_TRIG_GRPS_PK PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) +); +CREATE TABLE js_job_fired_triggers + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + ENTRY_ID VARCHAR2(95) NOT NULL, + TRIGGER_NAME VARCHAR2(200) NOT NULL, + TRIGGER_GROUP VARCHAR2(200) NOT NULL, + INSTANCE_NAME VARCHAR2(200) NOT NULL, + FIRED_TIME NUMBER(13) NOT NULL, + SCHED_TIME NUMBER(13) NOT NULL, + PRIORITY NUMBER(13) NOT NULL, + STATE VARCHAR2(16) NOT NULL, + JOB_NAME VARCHAR2(200) NULL, + JOB_GROUP VARCHAR2(200) NULL, + IS_NONCONCURRENT VARCHAR2(1) NULL, + REQUESTS_RECOVERY VARCHAR2(1) NULL, + CONSTRAINT js_job_FIRED_TRIGGER_PK PRIMARY KEY (SCHED_NAME,ENTRY_ID) +); +CREATE TABLE js_job_scheduler_state + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + INSTANCE_NAME VARCHAR2(200) NOT NULL, + LAST_CHECKIN_TIME NUMBER(13) NOT NULL, + CHECKIN_INTERVAL NUMBER(13) NOT NULL, + CONSTRAINT js_job_SCHEDULER_STATE_PK PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) +); +CREATE TABLE js_job_locks + ( + SCHED_NAME VARCHAR2(120) NOT NULL, + LOCK_NAME VARCHAR2(40) NOT NULL, + CONSTRAINT js_job_LOCKS_PK PRIMARY KEY (SCHED_NAME,LOCK_NAME) +); + +create index idx_qrtz_j_req_recovery on js_job_job_details(SCHED_NAME,REQUESTS_RECOVERY); +create index idx_qrtz_j_grp on js_job_job_details(SCHED_NAME,JOB_GROUP); + +create index idx_qrtz_t_j on js_job_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); +create index idx_qrtz_t_jg on js_job_triggers(SCHED_NAME,JOB_GROUP); +create index idx_qrtz_t_c on js_job_triggers(SCHED_NAME,CALENDAR_NAME); +create index idx_qrtz_t_g on js_job_triggers(SCHED_NAME,TRIGGER_GROUP); +create index idx_qrtz_t_state on js_job_triggers(SCHED_NAME,TRIGGER_STATE); +create index idx_qrtz_t_n_state on js_job_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); +create index idx_qrtz_t_n_g_state on js_job_triggers(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); +create index idx_qrtz_t_next_fire_time on js_job_triggers(SCHED_NAME,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_st on js_job_triggers(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_misfire on js_job_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_st_misfire on js_job_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); +create index idx_qrtz_t_nft_st_misfire_grp on js_job_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); + +create index idx_qrtz_ft_trig_inst_name on js_job_fired_triggers(SCHED_NAME,INSTANCE_NAME); +create index idx_qrtz_ft_inst_job_req_rcvry on js_job_fired_triggers(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); +create index idx_qrtz_ft_j_g on js_job_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); +create index idx_qrtz_ft_jg on js_job_fired_triggers(SCHED_NAME,JOB_GROUP); +create index idx_qrtz_ft_t_g on js_job_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); +create index idx_qrtz_ft_tg on js_job_fired_triggers(SCHED_NAME,TRIGGER_GROUP); + + diff --git a/modules/core/db/postgresql/job.sql b/modules/core/db/postgresql/job.sql new file mode 100644 index 00000000..d52a1071 --- /dev/null +++ b/modules/core/db/postgresql/job.sql @@ -0,0 +1,187 @@ +-- Thanks to Patrick Lightbody for submitting this... +-- +-- In your Quartz properties file, you'll need to set +-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate + +drop table js_job_fired_triggers; +DROP TABLE js_job_PAUSED_TRIGGER_GRPS; +DROP TABLE js_job_SCHEDULER_STATE; +DROP TABLE js_job_LOCKS; +drop table js_job_simple_triggers; +drop table js_job_cron_triggers; +drop table js_job_simprop_triggers; +DROP TABLE js_job_BLOB_TRIGGERS; +drop table js_job_triggers; +drop table js_job_job_details; +drop table js_job_calendars; + +CREATE TABLE js_job_job_details + ( + SCHED_NAME VARCHAR(120) NOT NULL, + JOB_NAME VARCHAR(200) NOT NULL, + JOB_GROUP VARCHAR(200) NOT NULL, + DESCRIPTION VARCHAR(250) NULL, + JOB_CLASS_NAME VARCHAR(250) NOT NULL, + IS_DURABLE BOOL NOT NULL, + IS_NONCONCURRENT BOOL NOT NULL, + IS_UPDATE_DATA BOOL NOT NULL, + REQUESTS_RECOVERY BOOL NOT NULL, + JOB_DATA BYTEA NULL, + PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) +); + +CREATE TABLE js_job_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + JOB_NAME VARCHAR(200) NOT NULL, + JOB_GROUP VARCHAR(200) NOT NULL, + DESCRIPTION VARCHAR(250) NULL, + NEXT_FIRE_TIME BIGINT NULL, + PREV_FIRE_TIME BIGINT NULL, + PRIORITY INTEGER NULL, + TRIGGER_STATE VARCHAR(16) NOT NULL, + TRIGGER_TYPE VARCHAR(8) NOT NULL, + START_TIME BIGINT NOT NULL, + END_TIME BIGINT NULL, + CALENDAR_NAME VARCHAR(200) NULL, + MISFIRE_INSTR SMALLINT NULL, + JOB_DATA BYTEA NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) + REFERENCES js_job_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) +); + +CREATE TABLE js_job_simple_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + REPEAT_COUNT BIGINT NOT NULL, + REPEAT_INTERVAL BIGINT NOT NULL, + TIMES_TRIGGERED BIGINT NOT NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE js_job_cron_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + CRON_EXPRESSION VARCHAR(120) NOT NULL, + TIME_ZONE_ID VARCHAR(80), + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE js_job_simprop_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + STR_PROP_1 VARCHAR(512) NULL, + STR_PROP_2 VARCHAR(512) NULL, + STR_PROP_3 VARCHAR(512) NULL, + INT_PROP_1 INT NULL, + INT_PROP_2 INT NULL, + LONG_PROP_1 BIGINT NULL, + LONG_PROP_2 BIGINT NULL, + DEC_PROP_1 NUMERIC(13,4) NULL, + DEC_PROP_2 NUMERIC(13,4) NULL, + BOOL_PROP_1 BOOL NULL, + BOOL_PROP_2 BOOL NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE js_job_blob_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + BLOB_DATA BYTEA NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES js_job_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE js_job_calendars + ( + SCHED_NAME VARCHAR(120) NOT NULL, + CALENDAR_NAME VARCHAR(200) NOT NULL, + CALENDAR BYTEA NOT NULL, + PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) +); + + +CREATE TABLE js_job_paused_trigger_grps + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) +); + +CREATE TABLE js_job_fired_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + ENTRY_ID VARCHAR(95) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + INSTANCE_NAME VARCHAR(200) NOT NULL, + FIRED_TIME BIGINT NOT NULL, + SCHED_TIME BIGINT NOT NULL, + PRIORITY INTEGER NOT NULL, + STATE VARCHAR(16) NOT NULL, + JOB_NAME VARCHAR(200) NULL, + JOB_GROUP VARCHAR(200) NULL, + IS_NONCONCURRENT BOOL NULL, + REQUESTS_RECOVERY BOOL NULL, + PRIMARY KEY (SCHED_NAME,ENTRY_ID) +); + +CREATE TABLE js_job_scheduler_state + ( + SCHED_NAME VARCHAR(120) NOT NULL, + INSTANCE_NAME VARCHAR(200) NOT NULL, + LAST_CHECKIN_TIME BIGINT NOT NULL, + CHECKIN_INTERVAL BIGINT NOT NULL, + PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) +); + +CREATE TABLE js_job_locks + ( + SCHED_NAME VARCHAR(120) NOT NULL, + LOCK_NAME VARCHAR(40) NOT NULL, + PRIMARY KEY (SCHED_NAME,LOCK_NAME) +); + +create index idx_qrtz_j_req_recovery on js_job_job_details(SCHED_NAME,REQUESTS_RECOVERY); +create index idx_qrtz_j_grp on js_job_job_details(SCHED_NAME,JOB_GROUP); + +create index idx_qrtz_t_j on js_job_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); +create index idx_qrtz_t_jg on js_job_triggers(SCHED_NAME,JOB_GROUP); +create index idx_qrtz_t_c on js_job_triggers(SCHED_NAME,CALENDAR_NAME); +create index idx_qrtz_t_g on js_job_triggers(SCHED_NAME,TRIGGER_GROUP); +create index idx_qrtz_t_state on js_job_triggers(SCHED_NAME,TRIGGER_STATE); +create index idx_qrtz_t_n_state on js_job_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); +create index idx_qrtz_t_n_g_state on js_job_triggers(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); +create index idx_qrtz_t_next_fire_time on js_job_triggers(SCHED_NAME,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_st on js_job_triggers(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_misfire on js_job_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_st_misfire on js_job_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); +create index idx_qrtz_t_nft_st_misfire_grp on js_job_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); + +create index idx_qrtz_ft_trig_inst_name on js_job_fired_triggers(SCHED_NAME,INSTANCE_NAME); +create index idx_qrtz_ft_inst_job_req_rcvry on js_job_fired_triggers(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); +create index idx_qrtz_ft_j_g on js_job_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); +create index idx_qrtz_ft_jg on js_job_fired_triggers(SCHED_NAME,JOB_GROUP); +create index idx_qrtz_ft_t_g on js_job_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); +create index idx_qrtz_ft_tg on js_job_fired_triggers(SCHED_NAME,TRIGGER_GROUP); + + +commit; diff --git a/modules/core/pom.xml b/modules/core/pom.xml index 45770762..f49f981e 100644 --- a/modules/core/pom.xml +++ b/modules/core/pom.xml @@ -45,6 +45,21 @@ postgresql runtime + + diff --git a/modules/core/src/test/java/application.yml b/modules/core/src/test/java/application.yml index 1d707cbc..961423e5 100644 --- a/modules/core/src/test/java/application.yml +++ b/modules/core/src/test/java/application.yml @@ -17,6 +17,22 @@ jdbc: username: root password: 123456 testSql: SELECT 1 + +# # DB2 数据库配置 +# type: db2 +# driver: com.ibm.db2.jcc.DB2Driver +# url: jdbc:db2://127.0.0.1:50000/jeesite +# username: jeesite +# password: jeesite +# testSql: SELECT 1 FROM DUAL + +# # H2 数据库配置 +# type: h2 +# driver: org.h2.Driver +# url: jdbc:h2:~/jeesite-db/jeesite +# username: jeesite +# password: jeesite +# testSql: SELECT 1 # 日志配置 logging: diff --git a/web/db/db2/filemanager.sql b/web/db/db2/filemanager.sql deleted file mode 100644 index 9ffba5a5..00000000 --- a/web/db/db2/filemanager.sql +++ /dev/null @@ -1,71 +0,0 @@ - -/* Drop Tables */ - -DROP TABLE js_filemanager_shared; -DROP TABLE js_filemanager_folder; - - - - -/* Create Tables */ - --- 文件管理文件夹 -CREATE TABLE js_filemanager_folder -( - id varchar(64) NOT NULL, - parent_code varchar(64) NOT NULL, - parent_codes varchar(1000) NOT NULL, - tree_sort decimal(10) NOT NULL, - tree_sorts varchar(1000) NOT NULL, - tree_leaf char(1) NOT NULL, - tree_level decimal(4) NOT NULL, - tree_names varchar(1000) NOT NULL, - folder_name vargraphic(100) NOT NULL, - group_type varchar(64) NOT NULL, - office_code varchar(64), - status char(1) DEFAULT '0' NOT NULL, - create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, - update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), - corp_code varchar(64) DEFAULT '0' NOT NULL, - corp_name vargraphic(100) DEFAULT 'JeeSite' NOT NULL, - PRIMARY KEY (id) -); - - --- 文件管理共享表 -CREATE TABLE js_filemanager_shared -( - id varchar(64) NOT NULL, - folder_id varchar(64), - file_upload_id varchar(64), - file_name vargraphic(500) NOT NULL, - receive_user_code varchar(100) NOT NULL, - receive_user_name vargraphic(200) NOT NULL, - click_num numeric(10), - status char(1) DEFAULT '0' NOT NULL, - create_by varchar(64) NOT NULL, - create_date timestamp NOT NULL, - update_by varchar(64) NOT NULL, - update_date timestamp NOT NULL, - remarks vargraphic(500), - PRIMARY KEY (id) -); - - - -/* Create Indexes */ - -CREATE INDEX idx_sys_file_tree_pc ON js_filemanager_folder (parent_code); -CREATE INDEX idx_sys_file_tree_ts ON js_filemanager_folder (tree_sort); -CREATE INDEX idx_sys_file_tree_tss ON js_filemanager_folder (tree_sorts); -CREATE INDEX idx_sys_file_tree_gt ON js_filemanager_folder (group_type); -CREATE INDEX idx_sys_file_tree_oc ON js_filemanager_folder (office_code); -CREATE INDEX idx_sys_file_tree_cb ON js_filemanager_folder (create_by); -CREATE INDEX idx_sys_file_share_ruc ON js_filemanager_shared (receive_user_code); -CREATE INDEX idx_sys_file_share_cb ON js_filemanager_shared (create_by); - - -