Форум OlegON > Компьютеры и Программное обеспечение > Операционные системы и программное обеспечение > Oracle

Сравнение периферийной базы с центральной выдает несоответствие... : Oracle

31.01.2025 2:42


12.03.2010 11:30
Свежесгенерированная база, проинициализированная файлом из центра. Версия 1.027.2 SP2. При пересылке данных из центра почтовик ругнулся

Цитата:
Несоответствие текущей схемы объекта и данных в виртуальном пакете. Изменена структура таблиц объекта «RF, SADOCDEFAULTS». Проверьте соответствие структуры БД эталонной.
Неверный хэш-код для схемы объекта «RF, SADOCDEFAULTS»
стал сравнивать структуру периферии с центром:

Цитата:
Отсутствует уникальный SMCGOODS_LOC : SMGOODS(STORELOC,ARTICLE)
Лишний не уникальный SMCGOODS_LOC : SMGOODS(STORELOC)

Отсутствует ограничение SYS_C0016240 таблицы SVLOCALSHOPS
Отсутствует ограничение SYS_C0016241 таблицы SVPRODGOODSART
Отсутствует ограничение SYS_C004744 таблицы TTZLONGDATA
Лишнее ограничение SYS_C004986 таблицы TTZLONGDATA

Не обязательная колонка SVPROCESSES.PROCESSTYPE присутствует как обязательная
как лечить?
12.03.2010 13:59
пересоздал периферийную базу, прогнал генератор, накатил скрипты сервис пака, проблема осталась...
12.03.2010 14:04
Проблема, скорее всего, в разных путях обновления баз. Т.е. виновата старшая.
Попробуем поверить, что почтовик говорит правду, приведи DDL для SADOCDEFAULTS обоих баз?
12.03.2010 14:06
хм... а что такое DDL?
12.03.2010 14:08
Я имел ввиду описание... Т.е. create table sadocdefaults ...
12.03.2010 15:03
периферия:
Цитата:
CREATE TABLE SADOCDEFAULTS
(
DOCTYPE CHAR(2 BYTE) NOT NULL,
LOCATION NUMBER(10) NOT NULL,
NAMEPREFIX VARCHAR2(10 BYTE),
NAMEOUTPREFIX VARCHAR2(10 BYTE),
NUMBERSIZE NUMBER(5) NOT NULL,
PRICEKIND NUMBER(5)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
);


CREATE UNIQUE INDEX SACDOCDEFAULTS_PK ON SADOCDEFAULTS
(DOCTYPE, LOCATION)
TABLESPACE INDX
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
);


ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFNUMBERSIZE
CHECK (NumberSize between 1 and (50 - 10)));

ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFAULTS_PK
PRIMARY KEY
(DOCTYPE, LOCATION)
USING INDEX
TABLESPACE INDX
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
));


ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFLOCATION
FOREIGN KEY (LOCATION)
REFERENCES
ON DELETE CASCADE);

ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFPRICESTYPE
FOREIGN KEY (PRICEKIND)
REFERENCES);

ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFDOCTYPE
FOREIGN KEY (DOCTYPE)
REFERENCES);


GRANT SELECT ON SADOCDEFAULTS TO SUPERMAG_USER;

GRANT DELETE, INSERT, SELECT, UPDATE ON SADOCDEFAULTS TO SUPERMAG_FN_EDITDOCDEFAULTS;

GRANT INSERT ON SADOCDEFAULTS TO SUPERMAG_FN_SLOCS_CREATE;
центр:
Цитата:
CREATE TABLE SADOCDEFAULTS
(
DOCTYPE CHAR(2 BYTE) NOT NULL,
LOCATION NUMBER(10) NOT NULL,
NAMEPREFIX VARCHAR2(10 BYTE),
NUMBERSIZE NUMBER(5) NOT NULL,
PRICEKIND NUMBER(5),
NAMEOUTPREFIX VARCHAR2(10 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 1M
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
);


CREATE UNIQUE INDEX SACDOCDEFAULTS_PK ON SADOCDEFAULTS
(DOCTYPE, LOCATION)
TABLESPACE INDX
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 1M
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
);


ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFNUMBERSIZE
CHECK (NumberSize between 1 and (50 - 10)));

ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFAULTS_PK
PRIMARY KEY
(DOCTYPE, LOCATION)
USING INDEX
TABLESPACE INDX
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 1M
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
));


ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFLOCATION
FOREIGN KEY (LOCATION)
REFERENCES
ON DELETE CASCADE);

ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFPRICESTYPE
FOREIGN KEY (PRICEKIND)
REFERENCES);

ALTER TABLE SADOCDEFAULTS ADD (
CONSTRAINT SACDOCDEFDOCTYPE
FOREIGN KEY (DOCTYPE)
REFERENCES);


GRANT SELECT ON SADOCDEFAULTS TO SUPERMAG_USER;

GRANT DELETE, INSERT, SELECT, UPDATE ON SADOCDEFAULTS TO SUPERMAG_FN_EDITDOCDEFAULTS;

GRANT INSERT ON SADOCDEFAULTS TO SUPERMAG_FN_SLOCS_CREATE;
13.03.2010 07:25
Предлагаю тебе побуквенно сравнить эти скрипты. Пока заметил только разный порядок колонок. Думаю, что это не играет роли. В крайнем случае можно грохнуть ее и создать скриптом из центральной. Только вот еще вопрос, у тебя есть работающие магазинные еще?
13.03.2010 08:07
тоже заметил разницу только в колонках.
взял другой магазин - один в один с центром.
а что с этим
Цитата:
Отсутствует уникальный SMCGOODS_LOC : SMGOODS(STORELOC,ARTICLE)
Лишний не уникальный SMCGOODS_LOC : SMGOODS(STORELOC)

Отсутствует ограничение SYS_C0016240 таблицы SVLOCALSHOPS
Отсутствует ограничение SYS_C0016241 таблицы SVPRODGOODSART
Отсутствует ограничение SYS_C004744 таблицы TTZLONGDATA
Лишнее ограничение SYS_C004986 таблицы TTZLONGDATA

Не обязательная колонка SVPROCESSES.PROCESSTYPE присутствует как обязательная
13.03.2010 12:18
SMCGOODS_LOC бы перестроить... Точнее, констрейнт передернуть на таблице SMGOODS
Часовой пояс GMT +3, время: 02:42.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.