ArcGIS表关联方式介绍(Join和Relate)
ArcGIS的表关联方式有很多:Join、Relate、QueryLayer、ArcSDE视图、关系类等,这些关联看似有相同的地方,但是其实不同的关联方式适合于不同的数据,不同的软件环境,不同的应用场景,不同的版本等,下面我们就针对每一个关联进行相关的分析和说明。
本文所有的测试环境
操作系统:Windows7 64Bit
数据库:Oracle 11.2.0.164Bit
中间件:ArcSDE10 SP2 64Bit
客户端:ArcGIS Desktop10SP264Bit
数据情况
面状要素:Place
普通表:Owner
预前说明
关于普通表在数据库中存储和在ArcSDE里面存储管理是完全不同的,虽然都是存储在数据库中,但是通过ArcSDE管理这些普通表的信息是会注册到ArcSDE的相关Schema中的,那么就出现一个问题,当我们需要管理一个Linux操作系统的普通表,如果这些表是ArcSDE管理,那么这些表我们就可以通过ArcSDE服务的方式进行关联,如果这些表是以普通方式进行存储,那么我们只能通过OleDB驱动来关联,但是Windows系统默认的OleDB驱动有SQLServer和Oracle的,如果用户是DB2的数据库,需要自己安装OleDB驱动,要么不安装OleDB驱动使用ArcSDE服务。
Join
数据环境:文件数据或者数据库都可以
必须条件:要素类与普通表必须有一个关联字段
Join后我们可以看到,要素类的属性(既有要素类属性又有普通表的属性)
Validate Join进行验证
Ø
Ø
Ø
Ø
连接表可能失败的原因
l
连接区分大小写,使用字符串字段创建连接时要注意此问题。例如,NEW YORK 不会与 New York 连接。要将字符串值转换为正常的大小写形式,请参阅进行字段计算中的任务。
l
这些特殊字符包括连字符(如 x-coordinate 和 y-coordinate)、圆括号、方括号以及 $、% 和 # 等符号。实际上排除了字母数字和下划线之外的所有符号,但字段名称不能以数字或下划线开头。必须先对带分隔符的文本文件或其他表中的字段名称进行编辑以删除不支持的字符,然后再在 ArcGIS 中使用这些文件。地理数据库的要素类、表和字段的名称最多可包含 64 个字符。(更具体地说,您最多只能为个人地理数据库的要素类名称输入 52 个字符,因为系统会将字符总数追加到 64 个。)Shapefile 和 .dbf 字段的最大名称长度为 10 个字符。对于 INFO 表,最多使用 16 个字母或数字。
l
例如,date、day、month、table、text、user、when、where、year 和 zone。
l
应通过 OLE DB 连接在 ArcGIS 中访问 Microsoft Access 表,而不应试图直接向 ArcMap 添加数据库。
使用join其实最大的便利就是进行标注显示,如下:
使用这个可以将要素类的属性和普通表的属性同时标注,增加用户对数据的可读性。
存储方式:只能使用MXD的方式进行存储,如果不使用MXD,关闭ArcMap建立的关联关系就不在存在。
提示:如果要素类与属性表不在同一个库中(同一个库表示文件数据比如在同一个Geodatabase,非文件数据在同一个数据库中),如果修改属性表的值,是不会实时更新的,必须重新再建立Join连接,这样才能看到最新的信息。
Relate
-------------------------------------------------------------------------------------------------------
版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!
QQ群:
Blog:
Weibo: