属性描述了要素的相关特性,并存储于表中。在创建新的属性表或是向已有的属性表中增加字段的时候,必须指明数据类型和字段属性,比如精度(Precision)或长度(Length)。数据类型的选择和相关设置会影响存储和显示,并且对后台数据库的精度和效率有十分重要的意义。
在ArcGIS中你可以将要素的属性值存储为七种数据类型之一,即短整型(short integer)、长整型(long integer)、浮点型(float)、双精度(double)、文本型(text)、日期型(date)和大型二进制对象(BLOB)。属性表同样包含预定义字段,保存了数据的几何特性(Shape)和要素ID(FID)。浮点和双精度数据是真实的数值,通常用于测量或计算的连续数据。短整型和长整型数据所反映的数值,通常用于记数或为分类指定一个编码值(coded value)。文本数据也能够存储编码值或者描述要素特征的文本,比如名称。要素时间方面的数据存储为日期型,如阀门的最后检测时间。BLOB能够集成其它的媒体,如视频、影像或声音。下表总结了这些数据类型的信息。
数据类型:
浮点型(Float):1个符号位、7个指数位和24个小数位;
双精度(Double):1个符号位、7个指数位和56个小数位;
短整型(Short Integer):1个符号位、15个二进制位,大约在-32000~32000;
长整型(Long Integer):1个符号位、31个二进制位,大约在-2000000000~2000000000;
文本型(Text):数字字符存储为字节;
日期型(Date):日期值基于标准时间格式存储;
复杂对象,如影像和视频。
用ArcMap为表增加一个新字段,在开始编辑shapefile属性表之前,你可以先看看已有字段的数据类型和设置。具体过程如下:
1、启动ArcMap,加载一个要修改的shapefile,在目录表(TOC)中右键单击shapefile文件,从环境菜单中选择Properties。
2、在Layer Properties对话框中,单击Fields标签。属性表中的每一个字段都列在这里,并且显示了数据类型和特性。单击OK,关闭Layer Properties对话框。
3、要增加字段,在目录表中单击shapefile,从环境菜单中选择Open Attribute Table。
4、单击Options按钮,选择Add Field。
5、在Add Field对话框中,为新字段命名并选择数据类型。在Field Properties中设置相应的字段特性。
6、单击OK,关闭对话框。
精度(Precision)是一项重要的设置,精度值反映了数据存储的详细程度,并不一定反映它的精确程度。确定实际需要的精度值,因为高的精度需要更多的磁盘空间。即精度(Precision)是设置数字(包括小数)的总的位数,比例(Scale)是小数点右边的数字位数。
在ArcCatalog中创建新的Shapefile,在ArcCatalog的表视图中也可以完成增加字段的工作(方法同上),此处我们讨论一下如何创建新的Shapefile。在创建新的Shapefile时,FID和Shape字段可以自动产生,但你增加的其它字段的数据类型必须自己指定。1、启动ArcCatalog,选择一个用来存储新建Shapefile的文件夹。2、从主菜单中选择File,New 建一个Shapefile。在Create New Shapefile对话框中,为shapefile命名,选择要素类型,设定坐标系统。如果要存储M和Z值,选中相应的复选框。完成后单击OK。3、右键单击新创建的shapefile,从环境菜单中选择Properties。4、在Shapefile Properties对话框中,单击Fields标签。5、要创建一个新的字段,只要在第一个有效的空行上单击。在Field Name下输入属性的名称。在Data Type下单击,从下拉列表框中选择合适的数据类型。6、一旦选择了数据类型,就可以对字段特性进行设置。设置完字段特性后,但击应用或确定。在ArcCatalog中可以增加、编辑或删除shapefile属性表的字段。新字段的值通常由表中的其它字段计算得到,或是存储选中要素的值。用代码增加一个字段,我们可以用ArcMap和ArcCatalog来增加字段,当然也可以用代码来完成这项工作。下面这段代码就可以很容易的增加一个字段。