P23
1. 右击Montogomery地理数据库,指向Import,然后单击Table to Geodatabase,使用Table to Geodatabase工具导入Owner.dat INFO表到Montogomery地理数据库中;
2. 在Input INFO or dBASE table文本框中输入输入C:\\ArcGIS\\ArcTuTor\\Building Geodatabase\\owner.dat;
3. 在Output Geodatabase Table文本框中输入“owners”; 4. 单击OK,出现显示操作进度消息框;
5. 在ArcCatalog树中,单击Montogomery数据库中owners表,然后击Preview标签,浏览其记录;
6. 右击owner表,然后单击Properties,查看表的属性; 7. 输入“Parcel owners”,作为表的别名; 8. 单击Field标签,并输入下面的字段别名: Field
ROWID
OWNER_NAME OWNER_PERCENT DEED_DATE
9. 单击OK;
在laterals Coverage中的数据和owner.dat INFO表现在已经存放在Montogomery数据库中。接下来通过为数据赋予行为来体现利用地理数据库的好处。下面将通过创建子类(subtype)和属性域(Attribute Domains)开始这个任务。
P24
Alias
Object identifier Owner name
Percentage ownership Date of deed
练习3:创建子类和属性域
把数据储存在地理数据库中最大的优点是能定义如何编辑数据的原则。在练习3中,将
学习定义某些规则来为自来水管直径创建一个新的属性域,为laterals要素类创建子类。并将新建的属性域、现有属性域以及默认值与每个子类的字段关联起来。
属性域是描述一个字段类型的有效值的规则。多个要素类和表可以共享数据库中的属性域。但是并非要素类和表中的所有对象都需要共享相同的属性域。
例如:在自来水网络中,假定消防自来水管线可以承受40到100psi的压力,但供水自来水管线可以拥有50到75psi的压力。可以使用属性域来确保这种规则。为了实现这种有效性规则,不必为消防和供水自来水管线建立各自的要素类。但为了能清楚知道每一种管线的类型,可以建立各自的域和默认值。可以通过建立子类来完成。
要了解更多关于子类和属性域的内容,请参阅第五章“子类和属性域”。
创建一个属性域
用ArcCatalog创建一个新的代码值属性域。这个新域为新的laterals要素类描述一组有效的管道直径。
1. 右击Montogomery地理数据库,再单击Properties;
2. 单击在Domain Name下面的第一个空行,然后输入“LatDiameter”,作为新域的名称,在Description字段,输入“Valid meters for water laterals”作为域的描述。
现在可以指定域的属性,这些属性包括这个域可以和什么类型的字段相关联,域是什么类型(范围或代码值),分割和合并策略,域的有效值等。
P25
一个范围域描述数字型值的有效范围,而代码值域描述一组有效的值。本例将创建一个新的代码值域。
所有域都有分割和合并策略,当一个要素被分割或合并后,ArcInfo系统查看这些策略来确定结果要素一个特定属性的值。
3. 单击Field type,出现一个下拉列表,为这个域的字段类型选择float型; 4. 单击Domain type,出现一个下拉列表,为域类型选取Code Values;
5. 单击Split policy出现一个下拉列表,单击Duplicate作为域的分割策略,合并策略采用Default Value;
为代码值域输入有效值和代码,并给每个代码提供一个友好的描述。在后面的教程中,ArcMap使用关联有代码值域的字段的友好描述而不是代码来描述字段。
6. 单击在Code列下面的第一个空字段,输入13,然后再单击其右边的描述字段输入“13””作为代码的描述。
7. 依次增加下面代码值到列表中: Code 10
Description 10"
8 6 4 3 2.25 2 1.5 1.25 1 0.75 -9 P26
8" 6" 4" 3" 21/4" 2" 11/2" 11/4" 1" 3/4" Unknown
8. 单击OK,增加域到地理数据库中。
现在已经增加了属性域到地理数据库中,在教程的下一部分中,将进一步学习关联这个域到要素类的字段。
创建子类并将默认值和域关联
使用laterals要素类的属性,可以创建子类以及使每个子类的字段与默认值和域相关联。
并非所有water laterals要素都需要有相同的子类、默认值以及教程后面介绍的连通性规则。 1. 右击laterals要素类,再单击Properties; 2. 单击Subtypes标签;
为laterals要素类指定子类字段。子类字段包含了一个特定要素所属子类的标识值。 3. 单击Subtype字段的下拉菜单,选中TYPECODE;
现在可以增加子类代码和相应的描述,每增加一个新的子类时,将为子类的某些字段分派一个默认值和域。
4. 单击子类代码0旁边的描述字段,在里面输入“Unknown”;
5. 单击H-CONFID旁边的默认值,输入“0”作为它的默认值。同样为DEPTH-BURI和
PECORDED-L输入“0”。为WMN-TYPE、PWTYPE字段输入“WUKNOWN”作为默认值。 P27
6. 单击DIAMETER右边的Default Value字段,输入“8”,作为默认值。单击Domain字
段的下拉菜单列表选中Lat Diament作为这个Unknown子类字段的属性域;
7. 为MATERIAL字段重复第6步的操作,输入“DI”作为默认值,然后在Domain下拉列
表中选中Material;
8. 增加下列其它子类,并象Unknown子类一样设置默认值和属性域。但WMN-TYPE和
PWTYPE字段的默认值例外,这些默认值如下表。 Code
Description
1 Hydrant laterals WMN_TYPE,PWTYPE Default
value=WHYDLIN
2 Fire laterals WMN_TYPE,PWTYPE Default
value=WFIRELIN
3 Service laterals WMN_TYPE,PWTYPE Default
value=WSERVICE P28
当在ArcMap编辑环境下增加新的要素到带子类的要素类中时,如果没有明确指定子类
时,默认的子类分配给这个新的要素。增加了所有子类后,可以从中选择一个设为默认的子类。
9. 单击默认子类旁边的下拉列表,选Service laterals作为默认子类。 10.单击OK。
现在已经通过增加域并创建子类向数据库中增加了行为。在练习8中,将体会ArcMap编辑器如何应用这些域和子类。在这之前,还需要创建关系为地理数据库增加一些行为。 P29
练习4:在对象间创建关系
在练习2中,已经导入包含对象的INFO表到Montgomery地理数据库中。这个数据库
中有一个叫parcels(宗地)的要素类包含了宗地对象。现在可以在宗地和宗地属主之间建立关系。这样,在ArcMap使用数据时,就能很容易找出哪些人拥有哪些宗地。 1. 右击Landbase要素数据集,单击New,再单击Relationship class;
New Relationship Class向导出现,向导的第一个面板用来指定关系名称、源要素类和目标要素类或表。
2. 输入“Parcel Owners”作为关系类的名称;
3. 单击Owners作为源表;
4. 双击Landbase,再单击其中的Parcel,作为目标要素类,单击Next。
下一个面板用来指定新建的关系类的类型。现在正在创建一个简单的关系类,因为属主和宗地可以在数据库中相互独立的存在。这里我们接受默认值——简单关系类。 5. 单击Next;
现在必须指定路径标签和消息通知方向。向前路径标签描述了从源要素类到目标要素类的关系。在本例中,为从属主到宗地的关系;向后路径标签描述了相反方向——从宗地到属主的关系。 P30
消息通知方向描述了消息在相关对象间如何传递。在本关系类中,不需要消息通知,因此可以接受默认值-None。
6. 为向前路径标签输入“owns”,为向后路径标签输入“is owned by”,单击Next;
现在需要确定关联基数。关联基数描述了与源要素类或表中一个对象相关联的目标要素类或表中对象的可能数量。
7. 单击1-M(一对多),表明一个用户可以拥有多个宗地,单击Next;
现在需要指明新的关系类是否有属性,在本例中,Parcel owners关系类不要求有属性,选择默认值。 8. 单击Next;
下一步,要在源表(owners)指定一个主关键字并在目标表(Parcels)中指定一个外部关键字。Owners表和Parcels表中在这些字段中有相同值的记录将被关联起来。 9. 单击第一个下拉箭头,选择PROPERTY-ID作为源表的主关键字; 10.单击第二个下拉箭头,选择PROPERTY-ID作为目标表中的外部关键字; 11.单击Next,一个信息汇总页出现,看完汇总页后,单击完成。
现在已经在地理数据库中增加了第二类行为——关系。练习8学习如何在ArcMap中编辑关系。在这之前,还需要通过创建几何网络和定义连通性规则向地理数据库中增加行为。
P31
练习5:创建几何网络
在同一要素数据集中的要素类可以加入到几何网络中。几何网络模拟现实网络系统,如
自来水网络。在教程的这一部分中,将从Montgomery地理数据库中的Water要素数据集的