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);
-
-
-