美文网首页GIS小铺
矢量数据属性字段的长度

矢量数据属性字段的长度

作者: 一片空白_ | 来源:发表于2017-07-06 15:30 被阅读31次

这里所说的属性字段类型是字符串。

细心的朋友会发现一个问题,在矢量属性里新建一个文本字段,当长度设置为2时,在该字段最多可以输入两个汉字,如下图所示:

新建字段 输入两个汉字

当输入三个汉字时,会提示错误,如下图:

输入三个汉字

但是,这与我们平时的认知是相悖的。相悖的地方是什么呢?是字符串的长度,一般来说,当字符串的长度为2时,只容纳2个 字母或一个汉字,可是现在,我们居然可以在字段里输入两个汉字,也就是4个字节的长度,且只有输入三个汉字的时候,才会提示错误。

原因在哪里呢?这其实是ArcGIS处于编辑状态下的一种“失常状态”。

当对数据停止编辑以后,会出现如下结果:

停止编辑后

也就是说,在编辑状态下,ArcGIS会“失常”的以为长度值就是可以输入的字符的个数,无论是输入什么字符,比如不输入汉字,换成字母。如下图:

输入三个字母

可是一旦停止编辑,ArcGIS就会恢复“正常状态”。

下面,再看一个细节,加入我们将字符串的长度设置为奇数,然后输入偶数个汉字,停止编辑以后会有什么结果呢?

新建字段

“失常状态”下可以输入7个汉字,我们输入4个就可以了。

输入四个汉字

停止编辑后,结果如下:

停止编辑后

会有一个问号(?)。因为这个位置应该只剩下一个字节的长度,满足不了一个汉字,但又不能为空,所以就用问号(?)来表示。

以上这些内容有什么用呢?其实用处不那么“伟大”,只是用来提醒各位从事GIS工作的伙伴,我们肯定会经常手工录入很多文字属性信息,有时候,为了避免新建字段后,还得用鼠标将字段列宽拉的小一些,所以提前输入了很小的长度,以至于后面输入信息时根本不会留意到是否能将输入的属性信息全部保存上。记住,“失常状态”下输入的,“正常状态”未必会保存上。

PS:

转发微博里的一条信息,韩雪女神当主编了,希望苏州的朋友们能支持她。我是她的粉丝。

韩雪主编的报纸 韩雪

相关文章

  • 矢量数据属性字段的长度

    这里所说的属性字段类型是字符串。 细心的朋友会发现一个问题,在矢量属性里新建一个文本字段,当长度设置为2时,在该字...

  • 程序员找工作必备 PHP 基础面试题

    1、优化 MYSQL 数据库的方法 (1) 选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置 NOT ...

  • 程序员找工作必备 PHP 基础面试题

    1、优化 MYSQL 数据库的方法 (1) 选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置 NOT ...

  • 数据库的优化

    优化MYSQL数据库的方法1、选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置NOT NULL,例如'...

  • geoserver 矢量服务标注

    数据源: 添加矢量数据源的时候,选择utf-8编码,在arcgis里或者uDig中修改属性字段(注意编码) SDL...

  • kettle_3添加数据库表字段

    根据excel表数据字段中表名、字段名、字段类型、类型长度、小数长度,在数据库对应表中添加相应字段。1.excel...

  • MySql基本操作语句(不包含查询)

    数据操作 1.添加记录 不列出属性字段 列出属性字段 一次性插入多条数据,可以列出属性字段名 也可以不列出属性字段...

  • 2020-01-07

    bug汇总: 1, 数据库字段长度,随着业务增长或者第三方数据长度不统一等问题导致数据库字段长度不够; 2,app...

  • Mysql-Warning: (1265, "Data trun

    数据超过数据库定义长度,提示数据被截断(数据已经插入了数据库,只是长度被截断,修改字段长度即可)

  • MongoDB 数组(Array)长度,大小,为空,等相关处理

    示例数据 一、获取数组长度 $size方法 二、按长度查找 1、指定长度字段为具体数值 2、指定长度字段为范围区间...

网友评论

    本文标题:矢量数据属性字段的长度

    本文链接:https://www.haomeiwen.com/subject/furhhxtx.html