Отношения SQL Server в ArcSDE?

9

Я использую ArcSDE 10 с SQL Server 2008 R2 Standard Edition. Я новичок в SDE и SQL Server, но я понимаю, что SQL Server имеет возможность создавать отношения между таблицами и поддерживать определенные правила ссылочной целостности.

ArcGIS имеет классы отношений, которые действуют аналогично, но класс отношений не обладает всеми функциями отношений SQL и не приводит к отношениям SQL в базе данных ArcSDE.

Можно ли создать классы отношений в ArcGIS для базы данных ArcSDE и создать отношения для тех же таблиц в SQL Server? Таким образом, я смогу использовать эти отношения, работаю ли я с данными в ArcGIS или в SQL Server Management Studio. Будут ли эти два типа отношений конфликтовать друг с другом или иным образом мешать работе?

Брайан
источник
Это всего лишь предположение (вот почему это не ответ), но я бы поспорил, что добавление отношений может вызвать некоторые конфликты, если вы не будете очень осторожны. Важно отметить, что если вы создаете версии своих таблиц, вы не хотите читать их со стороны SQL, а только со стороны ГИС. Чтение со стороны SQL показывает только самую старую версию данных (а не внесенные изменения, которые составляют версии).
Майкл Тодд
@MichaelTodd - Спасибо за ваш ответ. Я слышал о проблемах с доступом к версионным данным через SQL Server. Тем не менее, я также слышал, что это возможно с помощью многовариантных представлений. Я все еще новичок в этом деле, так что я не совсем уверен, что это значит, но я понял, что это возможно. Я просто обнаружил, что когда дело доходит до управления данными в ArcSDE, ArcGIS является самым слабым звеном.
Брайан
1
Да, многоверсионный вид работает, но он значительно медленнее. Мы перешли от запросов продолжительностью менее 1 секунды к запросам продолжительностью 4 секунды, когда переключились на MVV (что звучит не так уж и много, но отставание было очень заметным как внутри, так и для внешних клиентов).
Майкл Тодд

Ответы:

7

SDE и SQL на самом деле не друзья. Они не очень хорошо сотрудничают. SDE использует sql, но не использует все свои собственные возможности. Отношения, установленные в sde, не отражаются в SQL. Редактирование таблиц классов пространственных объектов, управляемых SDE, изменение схемы таблиц вне каталога, а также выполнение многих других задач приведет к потере SDE. Учитывая этот послужной список, я бы оставил отношения до SDE, если вы пытаетесь связать информацию о классе объектов. Если вы используете обычные таблицы, вырежьте sde out и используйте нативный sql.

Там нет ссылок на это, кроме моего собственного опыта. Если это материалы без источников, то оспаривайте или удаляйте это.

Стив
источник