ArcGIS属性表关联方式(Join和Rela…

2023-11-02 15:31

本文主要是介绍ArcGIS属性表关联方式(Join和Rela…,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ArcGIS表关联方式介绍(Join和Relate)

注:本文转载于 Blog:http://blog.csdn.net/linghe301
Weibo:http://www.weibo.com/linghe301

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进行验证

Ø  检查字段名称是否以无效字符开头。

Ø  检查字段名称是否包含无效字符。

Ø  检查字段名称是否与保留字匹配。

Ø  检查是否存在非地理数据库 MS Access表。

连接表可能失败的原因

用于连接的指定字段中的值不匹配。

连接区分大小写,使用字符串字段创建连接时要注意此问题。例如,NEW YORK 不会与 New York 连接。要将字符串值转换为正常的大小写形式,请参阅进行字段计算中的任务。

表或要素类的名称,或者表或要素类中的字段名称包含空格或特殊字符。

这些特殊字符包括连字符(如 x-coordinate 和 y-coordinate)、圆括号、方括号以及 $、% 和 # 等符号。实际上排除了字母数字和下划线之外的所有符号,但字段名称不能以数字或下划线开头。必须先对带分隔符的文本文件或其他表中的字段名称进行编辑以删除不支持的字符,然后再在 ArcGIS 中使用这些文件。地理数据库的要素类、表和字段的名称最多可包含 64 个字符。(更具体地说,您最多只能为个人地理数据库的要素类名称输入 52 个字符,因为系统会将字符总数追加到 64 个。)Shapefile 和 .dbf 字段的最大名称长度为 10 个字符。对于 INFO 表,最多使用 16 个字母或数字。

表中的字段名为 MicrosoftAccess 的保留字。

例如,date、day、month、table、text、user、when、where、year 和 zone。

表存储在非个人地理数据库的Microsoft Access 数据库中。

应通过 OLE DB 连接在 ArcGIS 中访问 Microsoft Access 表,而不应试图直接向 ArcMap 添加数据库。


使用join其实最大的便利就是进行标注显示,如下:


使用这个可以将要素类的属性和普通表的属性同时标注,增加用户对数据的可读性。

存储方式:只能使用MXD的方式进行存储,如果不使用MXD,关闭ArcMap建立的关联关系就不在存在。

提示:如果要素类与属性表不在同一个库中(同一个库表示文件数据比如在同一个Geodatabase,非文件数据在同一个数据库中),如果修改属性表的值,是不会实时更新的,必须重新再建立Join连接,这样才能看到最新的信息。

Relate

         Relate的使用跟Join比较类似,但是Relate并不会更改要素类的表信息(不会将普通表的信息添加到要素类中),但是在使用ArcMap的信息查询可以看到。

       关于使用数据、使用场景、存储方式都可以参考Join的说明。


-------------------------------------------------------------------------------------------------------
版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!
QQ群:              78773981
Blog:               http://blog.csdn.net/linghe301
Weibo:            http://www.weibo.com/linghe301

这篇关于ArcGIS属性表关联方式(Join和Rela…的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/331572

相关文章

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

AJAX请求上传下载进度监控实现方式

《AJAX请求上传下载进度监控实现方式》在日常Web开发中,AJAX(AsynchronousJavaScriptandXML)被广泛用于异步请求数据,而无需刷新整个页面,:本文主要介绍AJAX请... 目录1. 前言2. 基于XMLHttpRequest的进度监控2.1 基础版文件上传监控2.2 增强版多

Docker镜像修改hosts及dockerfile修改hosts文件的实现方式

《Docker镜像修改hosts及dockerfile修改hosts文件的实现方式》:本文主要介绍Docker镜像修改hosts及dockerfile修改hosts文件的实现方式,具有很好的参考价... 目录docker镜像修改hosts及dockerfile修改hosts文件准备 dockerfile 文

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro

CSS will-change 属性示例详解

《CSSwill-change属性示例详解》will-change是一个CSS属性,用于告诉浏览器某个元素在未来可能会发生哪些变化,本文给大家介绍CSSwill-change属性详解,感... will-change 是一个 css 属性,用于告诉浏览器某个元素在未来可能会发生哪些变化。这可以帮助浏览器优化

Win11安装PostgreSQL数据库的两种方式详细步骤

《Win11安装PostgreSQL数据库的两种方式详细步骤》PostgreSQL是备受业界青睐的关系型数据库,尤其是在地理空间和移动领域,:本文主要介绍Win11安装PostgreSQL数据库的... 目录一、exe文件安装 (推荐)下载安装包1. 选择操作系统2. 跳转到EDB(PostgreSQL 的

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

使用Sentinel自定义返回和实现区分来源方式

《使用Sentinel自定义返回和实现区分来源方式》:本文主要介绍使用Sentinel自定义返回和实现区分来源方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Sentinel自定义返回和实现区分来源1. 自定义错误返回2. 实现区分来源总结Sentinel自定

Springboot处理跨域的实现方式(附Demo)

《Springboot处理跨域的实现方式(附Demo)》:本文主要介绍Springboot处理跨域的实现方式(附Demo),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录Springboot处理跨域的方式1. 基本知识2. @CrossOrigin3. 全局跨域设置4.

springboot security使用jwt认证方式

《springbootsecurity使用jwt认证方式》:本文主要介绍springbootsecurity使用jwt认证方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录前言代码示例依赖定义mapper定义用户信息的实体beansecurity相关的类提供登录接口测试提供一