ArcMap10.1修改要素属性字段

问题描述:在ArcMap10.1中编辑要素属性表时,遇到输入字段值的长度超过字段最大长度时,ArcMap会抛出“基础DBMS错误[ORA-12899:value too large for column “SDE”.”A326”.”PRJNO”(actual:53, maximum:50)][SDE.HB_RedLand_A]”。如下图所示。

问题的分析:用过Arcgis系列软件的人都知道,Arcgis中要素的字段一经创建,是不允许修改的。之所以不允许修改是因为,如果允许在后期修改字段的类型和长度,那么用到该字段的所有应用程序(二次开发的)以及基于该字段进行数据处理流程,都会有可能出现错误。Esri公司不允许对创建后的字段进行修改是有道理的。

问题的解决:那么如果用户发现之前创建的字段不能满足需要,必须得修改那个字段该如何做呢?创建一个新的字段并将原始字段中的值复制至新建字段是不错的选择。在实际项目中往往需要新创建的字段与原始字段的名称一致,这就需要创建一个临时字段将原始字段中的值存储下来,再将原始字段删除,最后新建与原始字段名称一致的字段并将临时字段中的值赋值给新建字段,具体做法如下:

(1)新建字段。

(1.1)在非编辑状态下,单击要素属性表左上侧按钮,选择“添加字段”打开字段创建对话框,如图所示。

打开添加字段

(1.2)在“字段添加”编辑对话框中输入字段的名称、类型、长度,点击 “确定”完成字段创建。

添加字段

(2)将原始字段值赋值给新建字段。

(2.1)在编辑状态下选中新建字段选择“字段选择器”打开“字段选择器”。

打开字段计算器

(2.2)在“字段编辑器”中选择为当前字段赋值的字段,点击“确定”实现将原始字段值赋值给新建字段。

字段计算器

字段计算器赋值结果

关于在SDE中修改字段size

网上有人说在SDE库中修改对应要素表中对应字段,再在COLUMN_REGISTERY表中找到该字段对应的记录并修改,可以实现字段的修改,但本人经过尝试,发现采用这种方式修改字段后,其在arcMap中可以看见字段属性的长度变为修改后的长度,但是在添加数据时,仍旧会抛出字段长度不足的异常,说明这种方式修改字段未能达到目的。

column_registery表中修改指定表中字段

sde库中修改字段size结果

ArcMap10.1修改要素属性字段的更多相关文章

  1. QGis(三)查询矢量图层的要素属性字段值(转载)

    QGis(三)查询矢量图层的要素属性字段值 https://github.com/gwaldron/osgearth/issues/489 当加载一个矢量图层后,如果要查看要素的属性字段值,则需要实现 ...

  2. sql 增加修改表格属性字段

    1.修改字段默认值 alter table 表名 drop constraint 约束名字 ------注解:删除表的字段的原有约束 alter table 表名 add constraint 约束名 ...

  3. Qt+QGIS二次开发:自定义类实现查询矢量数据的属性字段值(图查属性)

    在GIS领域,有两种重要的查询操作,图查属性和属性查图. 本文主要介绍如何在QGIS中通过从QgsMapToolIdentify中派生自定义类实现查询矢量数据的属性字段值(图查属性). 重点参考资料: ...

  4. 玩转动态编译 - 高级篇:二,IL设置静态属性,字段和类型转换

    静态属性赋值 先来看 Reflector反射出的IL源码(感谢Moen的提示),这次用 Release模式编译,去掉那些无用的辅助指令 public void AAA(string s) { MyCl ...

  5. 关于Entity Framework采用DB First模式创建后的实体批量修改相关属性技巧

    Entity Framework采用DB First模式创建实体是比较容易与方便的,修改已创建的实体在个数不多的情况下也是没问题的,但如果已创建的实体比较多,比如10个实体以上,涉及修改的地方比较多的 ...

  6. [ASP.NET MVC]如何定制Numeric属性/字段验证消息

    原文:[ASP.NET MVC]如何定制Numeric属性/字段验证消息 对于一个Numeric属性/字段,ASP.NET MVC会自动进行数据类型的验证(客户端验证),以确保输入的是一个有效的数字, ...

  7. - 高级篇:二,IL设置静态属性,字段和类型转换

    - 高级篇:二,IL设置静态属性,字段和类型转换 静态属性赋值 先来看 Reflector反射出的IL源码(感谢Moen的提示),这次用 Release模式编译,去掉那些无用的辅助指令 public ...

  8. [ArcGIS API for JavaScript 4.8] Sample Code-Popups-1-popupTemplate的概念和popup中属性字段值的多种表现形式

    [官方文档:https://developers.arcgis.com/javascript/latest/sample-code/intro-popuptemplate/index.html] 一. ...

  9. ArcMap中属性字段计算器(Field Calculator)的使用技巧

           很多时候,我们在使用ArcGIS进行属性数据编辑时,需要批量修改某些字段值,这时候ArcGIS提供的属性字段计算器(Field Calculator)就是一把利器.下面我就Field C ...

随机推荐

  1. WIN7中因为服务进程是运行在session0下面的~~第一个登录的用户session为1(WTSGetActiveConsoleSessionId取得session的Id,OpenProcessToken取得进程的令牌)

    procedure TsvrExamCtrl.ServiceStart(Sender: TService; var Started: Boolean);var  CMD: string;begin   ...

  2. AutoCAD图形打印出图片 C#

    这几天搞cad二次开发,用的是C#语言,目前在网上找到的资料比较少.弄了两天,才做出怎样实现打印出图片.首先得在AutoCAD软件界面下,设置打印机的页面设置和打印机设备名称一样(以防打印不出来).即 ...

  3. oracle portlist.ini

    Enterprise Manager Database Control URL - (orcl) :https://redhat4.7:1158/em [root@redhat4 install]# ...

  4. 爬虫技术(六)-- 使用HtmlAgilityPack获取页面链接(附c#代码及插件下载)

    菜鸟HtmlAgilityPack初体验...弱弱的代码... Html Agility Pack是一个开源项目,为网页提供了标准的DOM API和XPath导航.使用WebBrowser和HttpW ...

  5. 使用hibernate annotation 为非空列加上默认值

    在网上查了很多资料都没找到如何为非空列加上默认值 以前的做法是给字段一个初始值,加上dynamic-insert属性 换了annotation了以后没有找到如何设置dynamic-insert属性 但 ...

  6. MVVM设计模式《网摘》

    MVVM模式能够帮你把你程序的业务与展现逻辑从用户界面干净地分离开.保持程序逻辑与界面分离能够帮助解决很多开发以及设计问题,能够使你的程序能更容易的测试,维护与升级.它也能很大程度的增加代码重用性,并 ...

  7. UVa 10943 (数学 递推) How do you add?

    将K个不超过N的非负整数加起来,使它们的和为N,一共有多少种方法. 设d(i, j)表示j个不超过i的非负整数之和为i的方法数. d(i, j) = sum{ d(k, j-1) | 0 ≤ k ≤ ...

  8. 01day1

    最大音量 动态规划 题意:给出一个初始值和一个变化序列 c,在第 i 步可以加上或减去 c[i],求 n 步之后能达到的最大值.有一个限定值 maxlevel,在变化过程中值不能超过 maxlevel ...

  9. 图文详解YUV420数据格式

    YUV格式有两大类:planar和packed.对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V.对于packed的YUV格式,每个像素点的Y,U ...

  10. HWM的实验

    HWM是数据段中使用空间和未使用空间之间的界限,假如现有自由链表上的数据块不能满足需求,Oracle把HWM指向的数据块加入到自由链表上,HWM向前移动到下一个数据块.简单说,一个数据段中,HWM左边 ...