2015-03-25 2 views
1

Вот мой случай. У меня было 2 базы геоданных. Второй создается позже. И я импортирую все таблицы в базу геоданных-1 в базу геоданных-2 с помощью ArcCatolog. Я использую srid 6 для моей базы геоданных 1 и своего стандарта. Но в базе геоданных 2 таблицы и индексы импортируются с помощью другого srid. Мне нужно изменить srid всех геометрических столбиков и пространственных индексов на 6.ORA-20085: Разные SRID

Сначала я проверил таблицу ST_spatial_references для srid 6 и не смог ее найти. Существует srid 30002 с тем же содержимым с srid 6 в базе геоданных 1. Затем я создаю запись в таблице ST_Spatial_references вручную для srid 6. После этого я попытался создать пространственный индекс со следующим запросом.

CREATE INDEX SDE.INDEX_NAME ON SDE.TABLE_NAME (SHAPE) 
INDEXTYPE IS SDE.ST_SPATIAL_INDEX 
PARAMETERS('st_grids=1:0:0 st_srid=6') 
NOPARALLEL; 

и получите эту ошибку. ORA-20085: разные SRID '6' не совпадают.

Мне нужно создать и прописать запись с id 6 правильно. И измените все таблицы и пространственные индексы, установленные на srid 6. Может ли кто-нибудь мне помочь?

Примечание: srid 30002 и 6 имеют точно такое же содержимое в таблице ST_SPATIAL_REFERENCES, кроме столбика id.

Thank you.

ответ

1

Причина, по которой вы видите, что ошибка SRID таблицы (определенной в таблице ST_GEOMETRY_COLUMNS) не совпадает с одной из содержащихся в ней геометрий (определенной в поле геометрии каждой записи).

Если вам действительно нужно изменить SRID таблицы (даже если вы не должны связываться с НИПИ, так как они внутренне управляются SDE), выполните следующие действия:

  • Создать запись в ST_SPATIAL_REFERENCE таблица с SRID = 6
  • Удалить с помощью ArcCatalog любой существующий пространственный указатель в таблице. Если он не работает, попробуйте воссоздать его, а затем удалить.
  • Обновление геометри, содержащиеся в таблице с помощью следующей команды SQL:

    ОБНОВЛЕНИЕ б SET b.shape.srid = 6

  • Обновить до 6 SRID таблицы в таблице ST_GEOMETRY_COLUMNS

  • Создание пространственного индекса с ArcCatalog

Это должно быть сделано для каждой таблицы (за исключением, конечно, для первого шага, который должно быть сделано только один раз).

Смежные вопросы