java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '0' for key 'PRIMARY'
原因是未对数据进行初始化
INSERT INTO BATCH_STEP_EXECUTION_SEQ (ID, UNIQUE_KEY) SELECT
*
FROM
(
SELECT
0 AS ID,
'0' AS UNIQUE_KEY
) AS tmp
WHERE
NOT EXISTS (
SELECT
*
FROM
BATCH_STEP_EXECUTION_SEQ
);
INSERT INTO BATCH_JOB_EXECUTION_SEQ (ID, UNIQUE_KEY) SELECT
*
FROM
(
SELECT
0 AS ID,
'0' AS UNIQUE_KEY
) AS tmp
WHERE
NOT EXISTS (
SELECT
*
FROM
BATCH_JOB_EXECUTION_SEQ
);
INSERT INTO BATCH_JOB_SEQ (ID, UNIQUE_KEY) SELECT
*
FROM
(
SELECT
0 AS ID,
'0' AS UNIQUE_KEY
) AS tmp
WHERE
NOT EXISTS (SELECT * FROM BATCH_JOB_SEQ);
建表语句
CREATE TABLE `batch_job_execution` (
`JOB_EXECUTION_ID` BIGINT (20) NOT NULL,
`VERSION` BIGINT (20) DEFAULT NULL,
`JOB_INSTANCE_ID` BIGINT (20) NOT NULL,
`CREATE_TIME` datetime NOT NULL,
`START_TIME` datetime DEFAULT NULL,
`END_TIME` datetime DEFAULT NULL,
`STATUS` VARCHAR (10) DEFAULT NULL,
`EXIT_CODE` VARCHAR (2500) DEFAULT NULL,
`EXIT_MESSAGE` VARCHAR (2500) DEFAULT NULL,
`LAST_UPDATED` datetime DEFAULT NULL,
`JOB_CONFIGURATION_LOCATION` VARCHAR (2500) DEFAULT NULL,
PRIMARY KEY (`JOB_EXECUTION_ID`),
KEY `JOB_INST_EXEC_FK` (`JOB_INSTANCE_ID`),
CONSTRAINT `JOB_INST_EXEC_FK` FOREIGN KEY (`JOB_INSTANCE_ID`) REFERENCES `batch_job_instance` (`JOB_INSTANCE_ID`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_job_execution_context` (
`JOB_EXECUTION_ID` BIGINT (20) NOT NULL,
`SHORT_CONTEXT` VARCHAR (2500) NOT NULL,
`SERIALIZED_CONTEXT` text,
PRIMARY KEY (`JOB_EXECUTION_ID`),
CONSTRAINT `JOB_EXEC_CTX_FK` FOREIGN KEY (`JOB_EXECUTION_ID`) REFERENCES `batch_job_execution` (`JOB_EXECUTION_ID`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_job_execution_params` (
`JOB_EXECUTION_ID` BIGINT (20) NOT NULL,
`TYPE_CD` VARCHAR (6) NOT NULL,
`KEY_NAME` VARCHAR (100) NOT NULL,
`STRING_VAL` VARCHAR (250) DEFAULT NULL,
`DATE_VAL` datetime DEFAULT NULL,
`LONG_VAL` BIGINT (20) DEFAULT NULL,
`DOUBLE_VAL` DOUBLE DEFAULT NULL,
`IDENTIFYING` CHAR (1) NOT NULL,
KEY `JOB_EXEC_PARAMS_FK` (`JOB_EXECUTION_ID`),
CONSTRAINT `JOB_EXEC_PARAMS_FK` FOREIGN KEY (`JOB_EXECUTION_ID`) REFERENCES `batch_job_execution` (`JOB_EXECUTION_ID`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_job_execution_seq` (
`ID` BIGINT (20) NOT NULL,
`UNIQUE_KEY` CHAR (1) NOT NULL,
UNIQUE KEY `UNIQUE_KEY_UN` (`UNIQUE_KEY`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_job_instance` (
`JOB_INSTANCE_ID` BIGINT (20) NOT NULL,
`VERSION` BIGINT (20) DEFAULT NULL,
`JOB_NAME` VARCHAR (100) NOT NULL,
`JOB_KEY` VARCHAR (32) NOT NULL,
PRIMARY KEY (`JOB_INSTANCE_ID`),
UNIQUE KEY `JOB_INST_UN` (`JOB_NAME`, `JOB_KEY`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_job_seq` (
`ID` BIGINT (20) NOT NULL,
`UNIQUE_KEY` CHAR (1) NOT NULL,
UNIQUE KEY `UNIQUE_KEY_UN` (`UNIQUE_KEY`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_step_execution` (
`STEP_EXECUTION_ID` BIGINT (20) NOT NULL,
`VERSION` BIGINT (20) NOT NULL,
`STEP_NAME` VARCHAR (100) NOT NULL,
`JOB_EXECUTION_ID` BIGINT (20) NOT NULL,
`START_TIME` datetime NOT NULL,
`END_TIME` datetime DEFAULT NULL,
`STATUS` VARCHAR (10) DEFAULT NULL,
`COMMIT_COUNT` BIGINT (20) DEFAULT NULL,
`READ_COUNT` BIGINT (20) DEFAULT NULL,
`FILTER_COUNT` BIGINT (20) DEFAULT NULL,
`WRITE_COUNT` BIGINT (20) DEFAULT NULL,
`READ_SKIP_COUNT` BIGINT (20) DEFAULT NULL,
`WRITE_SKIP_COUNT` BIGINT (20) DEFAULT NULL,
`PROCESS_SKIP_COUNT` BIGINT (20) DEFAULT NULL,
`ROLLBACK_COUNT` BIGINT (20) DEFAULT NULL,
`EXIT_CODE` VARCHAR (2500) DEFAULT NULL,
`EXIT_MESSAGE` VARCHAR (2500) DEFAULT NULL,
`LAST_UPDATED` datetime DEFAULT NULL,
PRIMARY KEY (`STEP_EXECUTION_ID`),
KEY `JOB_EXEC_STEP_FK` (`JOB_EXECUTION_ID`),
CONSTRAINT `JOB_EXEC_STEP_FK` FOREIGN KEY (`JOB_EXECUTION_ID`) REFERENCES `batch_job_execution` (`JOB_EXECUTION_ID`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_step_execution_context` (
`STEP_EXECUTION_ID` BIGINT (20) NOT NULL,
`SHORT_CONTEXT` VARCHAR (2500) NOT NULL,
`SERIALIZED_CONTEXT` text,
PRIMARY KEY (`STEP_EXECUTION_ID`),
CONSTRAINT `STEP_EXEC_CTX_FK` FOREIGN KEY (`STEP_EXECUTION_ID`) REFERENCES `batch_step_execution` (`STEP_EXECUTION_ID`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE `batch_step_execution_seq` (
`ID` BIGINT (20) NOT NULL,
`UNIQUE_KEY` CHAR (1) NOT NULL,
UNIQUE KEY `UNIQUE_KEY_UN` (`UNIQUE_KEY`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
网友评论