forked from community/product-iots
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
160 lines
4.3 KiB
160 lines
4.3 KiB
6 years ago
|
ALTER TABLE DM_OPERATION
|
||
|
ADD COLUMN INITIATED_BY VARCHAR(100) NULL DEFAULT NULL AFTER OPERATION_CODE;
|
||
|
|
||
|
CREATE INDEX IDX_DEVICE_TYPE_PROVIDER ON DM_DEVICE_TYPE (NAME, PROVIDER_TENANT_ID);
|
||
|
CREATE INDEX IDX_DEVICE_TYPE_DEVICE_NAME ON DM_DEVICE_TYPE(ID, NAME);
|
||
|
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_APPLICATION_MAPPING
|
||
|
ADD COLUMN ENROLMENT_ID INT(11) NULL AFTER DEVICE_ID,
|
||
|
ADD COLUMN APP_PROPERTIES BLOB NULL AFTER TENANT_ID,
|
||
|
ADD COLUMN MEMORY_USAGE INT(11) NULL AFTER APP_PROPERTIES,
|
||
|
ADD COLUMN IS_ACTIVE TINYINT NULL AFTER MEMORY_USAGE;
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 0;
|
||
|
|
||
|
UPDATE DM_DEVICE_APPLICATION_MAPPING dam,
|
||
|
DM_ENROLMENT de,
|
||
|
DM_APPLICATION da
|
||
|
SET
|
||
|
dam.ENROLMENT_ID = de.ID,
|
||
|
dam.MEMORY_USAGE = da.MEMORY_USAGE,
|
||
|
dam.APP_PROPERTIES = da.APP_PROPERTIES,
|
||
|
dam.IS_ACTIVE = da.IS_ACTIVE
|
||
|
WHERE
|
||
|
dam.APPLICATION_ID = da.ID
|
||
|
AND dam.DEVICE_ID = de.DEVICE_ID
|
||
|
AND de.STATUS = 'ACTIVE';
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 1;
|
||
|
|
||
|
|
||
|
-- This should run only after the 3.1.0 is shutdown completely.
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_APPLICATION_MAPPING
|
||
|
CHANGE COLUMN IS_ACTIVE IS_ACTIVE TINYINT(4) NOT NULL ,
|
||
|
ADD INDEX FK_DM_APP_MAP_DM_ENROL_idx (ENROLMENT_ID ASC);
|
||
|
ALTER TABLE DM_DEVICE_APPLICATION_MAPPING
|
||
|
ADD CONSTRAINT FK_DM_APP_MAP_DM_ENROL
|
||
|
FOREIGN KEY (ENROLMENT_ID)
|
||
|
REFERENCES DM_ENROLMENT (ID)
|
||
|
ON DELETE NO ACTION
|
||
|
ON UPDATE NO ACTION;
|
||
|
|
||
|
-- Change the notification --
|
||
|
|
||
|
ALTER TABLE DM_NOTIFICATION
|
||
|
DROP FOREIGN KEY fk_dm_operation_notification;
|
||
|
ALTER TABLE DM_NOTIFICATION
|
||
|
CHANGE COLUMN OPERATION_ID OPERATION_ID INT(11) NULL ,
|
||
|
ADD COLUMN LAST_UPDATED_TIMESTAMP TIMESTAMP NULL AFTER DESCRIPTION;
|
||
|
|
||
|
|
||
|
ALTER TABLE DM_NOTIFICATION
|
||
|
CHANGE COLUMN LAST_UPDATED_TIMESTAMP LAST_UPDATED_TIMESTAMP TIMESTAMP NOT NULL ;
|
||
|
|
||
|
-- Change the device info ---
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_INFO
|
||
|
ADD COLUMN ENROLMENT_ID INT(11) NULL AFTER DEVICE_ID;
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 0;
|
||
|
|
||
|
|
||
|
UPDATE DM_DEVICE_INFO di,
|
||
|
DM_ENROLMENT de
|
||
|
SET
|
||
|
di.ENROLMENT_ID = de.ID
|
||
|
WHERE
|
||
|
di.DEVICE_ID = de.DEVICE_ID
|
||
|
AND de.STATUS = 'ACTIVE';
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 1;
|
||
|
|
||
|
-- This should run only after the 3.1.0 is shutdown completely.
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_INFO
|
||
|
CHANGE COLUMN ENROLMENT_ID ENROLMENT_ID INT(11) NOT NULL,
|
||
|
ADD INDEX DM_DEVICE_LOCATION_DM_ENROLLMENT_idx (ENROLMENT_ID ASC);
|
||
|
ALTER TABLE DM_DEVICE_INFO
|
||
|
ADD CONSTRAINT DM_DEVICE_LOCATION_DM_ENROLLMENT
|
||
|
FOREIGN KEY (ENROLMENT_ID)
|
||
|
REFERENCES DM_ENROLMENT (ID)
|
||
|
ON DELETE NO ACTION
|
||
|
ON UPDATE NO ACTION;
|
||
|
|
||
|
|
||
|
-- Change the device location ---
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_LOCATION
|
||
|
CHANGE COLUMN STREET1 STREET1 VARCHAR(255) NULL DEFAULT NULL ,
|
||
|
CHANGE COLUMN STREET2 STREET2 VARCHAR(255) NULL DEFAULT NULL ,
|
||
|
ADD COLUMN ENROLMENT_ID INT(11) NULL AFTER DEVICE_ID,
|
||
|
ADD COLUMN GEO_HASH VARCHAR(45) NULL AFTER UPDATE_TIMESTAMP,
|
||
|
ADD INDEX DM_DEVICE_LOCATION_GEO_hashx (GEO_HASH ASC);
|
||
|
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 0;
|
||
|
|
||
|
|
||
|
UPDATE DM_DEVICE_LOCATION di,
|
||
|
DM_ENROLMENT de
|
||
|
SET
|
||
|
di.ENROLMENT_ID = de.ID
|
||
|
WHERE
|
||
|
di.DEVICE_ID = de.DEVICE_ID
|
||
|
AND de.STATUS = 'ACTIVE';
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 1;
|
||
|
|
||
|
-- This should run only after the 3.1.0 is shutdown completely.
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_LOCATION
|
||
|
CHANGE COLUMN ENROLMENT_ID ENROLMENT_ID INT(11) NOT NULL ,
|
||
|
ADD INDEX DM_DEVICE_LOCATION_DM_ENROLLMENT_idx (ENROLMENT_ID ASC);
|
||
|
ALTER TABLE DM_DEVICE_LOCATION
|
||
|
ADD CONSTRAINT FK_DM_DEVICE_LOCATION_DM_ENROLLMENT
|
||
|
FOREIGN KEY (ENROLMENT_ID)
|
||
|
REFERENCES DM_ENROLMENT (ID)
|
||
|
ON DELETE NO ACTION
|
||
|
ON UPDATE NO ACTION;
|
||
|
|
||
|
|
||
|
-- Changes to the device details --
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_DETAIL
|
||
|
CHANGE COLUMN CONNECTION_TYPE CONNECTION_TYPE VARCHAR(50) NULL DEFAULT NULL ,
|
||
|
ADD COLUMN ENROLMENT_ID INT(11) NULL AFTER DEVICE_ID;
|
||
|
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 0;
|
||
|
|
||
|
|
||
|
UPDATE DM_DEVICE_DETAIL di,
|
||
|
DM_ENROLMENT de
|
||
|
SET
|
||
|
di.ENROLMENT_ID = de.ID
|
||
|
WHERE
|
||
|
di.DEVICE_ID = de.DEVICE_ID
|
||
|
AND de.STATUS = 'ACTIVE';
|
||
|
|
||
|
SET SQL_SAFE_UPDATES = 1;
|
||
|
|
||
|
-- This should run only after the 3.1.0 is shutdown completely.
|
||
|
|
||
|
ALTER TABLE DM_DEVICE_DETAIL
|
||
|
CHANGE COLUMN ENROLMENT_ID ENROLMENT_ID INT(11) NOT NULL ,
|
||
|
ADD INDEX FK_DM_ENROLMENT_DEVICE_DETAILS_idx (ENROLMENT_ID ASC);
|
||
|
ALTER TABLE DM_DEVICE_DETAIL
|
||
|
ADD CONSTRAINT FK_DM_ENROLMENT_DEVICE_DETAILS
|
||
|
FOREIGN KEY (ENROLMENT_ID)
|
||
|
REFERENCES DM_ENROLMENT (ID)
|
||
|
ON DELETE NO ACTION
|
||
|
ON UPDATE NO ACTION;
|
||
|
|
||
|
-- TEMP TABLE REQUIRED FOR DATA ARCHIVAL JOB
|
||
|
CREATE TABLE IF NOT EXISTS DM_ARCHIVED_OPERATIONS (
|
||
|
ID INTEGER NOT NULL,
|
||
|
CREATED_TIMESTAMP TIMESTAMP NOT NULL,
|
||
|
PRIMARY KEY (ID)
|
||
|
)ENGINE = InnoDB;
|