我正在使用SQL Server 2008 R2 Standard Edition运行ArcSDE 10。我是SDE和SQL Server的新手,但我了解SQL Server能够在表之间创建关系并维护某些参照完整性规则。
ArcGIS的关系类的行为类似,但是关系类不具有SQL关系的所有功能,并且不会在ArcSDE数据库中导致SQL关系。
是否可以在ArcGIS for ArcSDE数据库中创建关系类并在SQL Server中为同一表创建关系?这样,无论我是在ArcGIS中还是在SQL Server Management Studio中处理数据,我都将能够利用这些关系。两种类型的关系会相互冲突还是会阻碍绩效?
这只是一个猜测(这就是为什么它不是答案),但是我敢打赌,除非非常小心,否则添加关系可能会导致一些冲突。重要的一点是,如果要对表进行版本控制,则不想从SQL端读取它们,而只希望从GIS端读取它们。从SQL端读取仅显示数据的最旧版本(而不显示构成版本的已进行的更改)。
—
Michael Todd
@MichaelTodd-感谢您的回复。我听说过通过SQL Server访问版本化数据的问题。但是,我也听说使用多版本视图是可能的。我仍然是这个东西的新手,所以我不确定这意味着什么,但是我的收获是有可能。我发现在ArcSDE中进行数据管理时,ArcGIS是最薄弱的环节。
—
布莱恩(Brian)
是的,可以使用多版本视图,但是速度要慢得多。当我们切换到MVV时,我们从不到1秒的查询过渡到了4秒的查询(听起来并不多,但是内部和外部客户的延迟都非常明显)。
—
迈克尔·托德