在项目实施过程中,由于MSTR版本的更新,会遇到将原有项目迁移到最新版本的MSTR,这个时候就会涉及MSTR的升级。而在升级过程中,会遇到由于某些表的不存在而导致升级失败,如果遇到这样问题,可参考在元数据库中是否存在以下表,如果不存在,请运行如下命令尝试:
1.CREATETABLE DSSCSADDRESS (
CONTACT_ID CHAR(32) NOT NULL ,
ADDRESS_ID CHAR(32) NOT NULL ,
DISP_NAME NVARCHAR2(250) NOT NULL ,
ADDRESS NVARCHAR2(250) NULL ,
DELIVERY_TYPE NUMBER(10) NOT NULL ,
IS_DEFAULT NUMBER(5) NOT NULL ,
DEVICE_ID CHAR(32) NOT NULL ,
VERSION_ID CHAR(32) NOT NULL ,
CREATION_TIME TIMESTAMP(3) NOT NULL ,
MODIFICATION_TIMETIMESTAMP(3) NOT NULL );
ALTER TABLEDSSCSADDRESS ADD PRIMARY KEY (ADDRESS_ID);
ALTER TABLEDSSCSADDRESS MODIFY (
CREATION_TIME TIMESTAMP(3),
MODIFICATION_TIME TIMESTAMP(3)
);
2.CREATETABLE DSSCSPSNLZTN (
INST_ID CHAR(32) NOT NULL ,
SUB_ID NUMBER(10) NOT NULL ,
VAL_SEQ NUMBER(10) NOT NULL ,
P_VALUE NVARCHAR2(1024) NOT NULL );
ALTER TABLEDSSCSPSNLZTN ADD PRIMARY KEY (INST_ID, SUB_ID, VAL_SEQ);
3.CREATETABLE DSSCSRCOLCON (
CONTACT_ID CHAR(32) NOT NULL ,
COLLECTION_ID CHAR(32) NOT NULL );
ALTER TABLEDSSCSRCOLCON ADD PRIMARY KEY (CONTACT_ID, COLLECTION_ID);
4.CREATETABLE DSSCSRINSTRG (
INST_ID CHAR(32) NOT NULL ,
TRIGGER_ID CHAR(32) NOT NULL );
ALTER TABLEDSSCSRINSTRG ADD PRIMARY KEY (INST_ID, TRIGGER_ID);
5.CREATETABLE DSSCSSUBINST (
INST_ID CHAR(32) NOT NULL ,
DISP_NAME NVARCHAR2(250) NULL ,
STATUS NUMBER(10) NOT NULL ,
CREATION_TIME TIMESTAMP(3) NOT NULL ,
PARENT_ID CHAR(32) NOT NULL ,
PROJECT_ID CHAR(32) NOT NULL ,
DATA_ID CHAR(32) NOT NULL ,
DATA_TYPE NUMBER(10) NOT NULL ,
IS_PERSONALIZED NUMBER(2) NOT NULL ,
CHANGEABILITY NUMBER(2) NOT NULL ,
OWNER_ID CHAR(32) NOT NULL ,
RECIPIENT_ID CHAR(32) NOT NULL ,
TRIGGER_ID CHAR(32) NOT NULL ,
DELIVERY_TYPE NUMBER(10) NOT NULL ,
ADDRESS_ID CHAR(32) NOT NULL ,
NOTIFICATION_ADDR_IDCHAR(32) NOT NULL ,
VERSION_ID CHAR(32) NOT NULL ,
MODIFICATION_TIMETIMESTAMP(3) NOT NULL ,
INITIAL_ID CHAR(32) NOT NULL );
ALTER TABLEDSSCSSUBINST ADD PRIMARY KEY (INST_ID);
ALTER TABLEDSSCSSUBINST MODIFY (
CREATION_TIME TIMESTAMP(3),
MODIFICATION_TIME TIMESTAMP(3) );
6.CREATETABLE DSSCSBADGETB (
TOKEN NVARCHAR2(250) NOT NULL ,
BADGE NUMBER(10) NOT NULL ,
ADDRESS_DEVICE_ID CHAR(32) NOT NULL );
ALTER TABLEDSSCSBADGETB ADD PRIMARY KEY (TOKEN, ADDRESS_DEVICE_ID);
7.CREATETABLE DSSCSDEVCKEY (
DEVICE_TOKEN NVARCHAR2(250) NOT NULL ,
DEVICE_KEY NVARCHAR2(250) NOT NULL ,
ADDRESS_DEVICE_ID CHAR(32) NOT NULL );
ALTER TABLEDSSCSDEVCKEY ADD PRIMARY KEY (DEVICE_TOKEN, ADDRESS_DEVICE_ID);
以上是在实际项目实施过程中,由9.4.1升级到10.3遇到的问题的解决方法,请参考~