3.1.3 数据管理
- 功能说明
可以连接数据库,对数据库中的数据进行新建、导入导出、重排空间索引、重排主键、字段以及字典进行管理。
- 操作说明
单击【数据管理】,弹出数据管理对话框。
图31数据管理对话框
数据库数据管理
(一)数据库连接
如果当前是新建地图,则数据库连接列表中只显示“新建连接”;如果图层管理器中已增加了数据,则数据库连接列表中还会显示“添加当前地图数据库”。
(1)新建连接
双击“新建连接”,弹出数据库连接信息对话框,目前支持ZDB(Sqlite数据库)和MySQL数据库的连接,以ZDB为例:输入数据库名称、选择类型ZDB、打开数据库的存储路径,双击选择已有的*.ZDB数据库,单击“确定”,该数据库被添加到数据库连接列表中。
图32数据库连接对话框
图33连接新的数据库
如在文件路径下输入新的文件名点击“保存”,确定后会在该文件路径下创建新的*.zdb数据库。
(2)添加当前地图数据库
双击“添加当前地图数据库”,可以将当前地图列表中的数据库添加到数据库连接列表中。
(3)数据库信息
双击连接的数据库,数据库中的表信息就会展现出来;数据库中按字典表、数据表分类显示,左侧展示数据库中的数据表,右侧展示选择的数据库或数据表的相关信息。
图34数据库信息展示
图35数据表信息展示
(4)删除连接
选中连接的数据库,单击鼠标右键,在弹出的菜单中选择“删除连接”,给出是否删除数据库连接的提示,单击“确定”,则进行删除,单击“取消”,则取消删除操作。
图36删除连接
图37是否删除数据库连接提示
删除所有连接:给出是否删除所有数据库连接提示,单击“确定”,则删除所有的数据库连接,单击“取消”,则取消删除操作。
删除连接是删除数据库的连接,而不会删除数据库的实体。
(5)打开文件所在位置
选中连接的数据库,单击鼠标右键,在弹出的菜单中选择“打开文件所在位置”,在新窗口中打开文件位置。
(6)复制连接信息
选中连接的数据库,单击鼠标右键,在弹出的菜单中选择“复制连接信息”,数据库连接信息复制到剪贴板。
(二)导入数据
- 功能说明
将其他格式的数据导入到选中的目标数据库中。
- 操作说明
第一步:选中连接的数据库,单击鼠标右键,在弹出的菜单中选择“导入数据”或直接点击右侧“导入数据”按钮,弹出数据导入对话框;
图38数据导入
第二步:单击,弹出添加数据对话框;
图39添加数据对话框
第三步:选择要导入的数据,数据类型包括shp-文件夹数据库、FileGDB数据库、zdb-Sqlite数据库、Mysql- Mysql数据库以及PostgresSQL数据库;其中Mysql数据库与PostgresSQL数据库的连接参数都包括连接名称、服务器IP地址、数据库名称、端口号、用户名和密码;
图40 Mysql数据库、PostgresSQL数据库连接参数设置界面
第四步:单击“转换”,将加载的外部数据导入到当前连接的数据库中。
注意:在导入数据时,导入过程中若存在重名数据,系统自动将重名数据名称后缀_1。
数据表数据管理
(一)追加数据
- 功能说明
支持数据追加到选择的数据表中。
- 操作说明
第一步:选择数据库中的数据表,单击鼠标右键,在弹出的菜单中选择“追加数据”,弹出数据追加对话框;
图41数据追加
第二步:单击,选择要追加的数据;
第三步:单击“确定”,进行追加。
(二)导出数据
- 功能说明
将选中的zdb矢量数据或属性表导出到其他数据库中,如:shp、FileGDB、zdb、mysql。
- 操作说明
第一步:选择数据库中的数据表,单击鼠标右键,在弹出的菜单中选择“导出数据”,弹出数据导出对话框;
图42数据导出
点击“参数设置”或双击图层记录,可设置目标数据名称、过滤条件、以及导出字段(系统默认与源数据相同,可根据需要修改),
第二步:单击,弹出数据库连接信息对话框;
图43数据库连接
第三步:选择数据类型和文件夹路径,数据类型包括shp-文件夹数据库、、zdb-Sqlite数据库、Mysql-Mysql数据库、FileGDB数据库以及postgresSQL数据库;单击“确定”,关闭数据库连接对话框;
第四步:单击“转换”,将数据表导出到外部数据库中。
(三)删除数据
- 功能说明
将选中的zdb矢量数据或属性表从当前连接的数据库中彻底删除。
- 操作说明
第一步:选择数据库中的数据表,单击鼠标右键,在弹出的菜单中选择“删除数据”,给出确认删除提示;
第二步:单击提示中的“确定”,则进行删除;单击“取消”,则取消删除操作。
(四)重命名
- 功能说明
将选中的矢量和属性数据表重新命名。
- 操作说明
第一步:选择数据库中的数据表,单击鼠标右键,在弹出的菜单中选择“重命名”,弹出重命名对话框;
图44数据表重命名
第二步:输入新名称,单击“确定”,数据表显示新的名称。
注意:这里重命名的是数据源的表名称,不是表别名。
(五)子表信息
- 功能说明
支持对矢量数据和属性表进行主子表关系设置,通常用于一个小班有自己本身的属性,还存在有针对小班中部分字段值的计算、调查表。
- 操作说明
(1)添加子表
第一步:在数据表上右击,选择“子表信息”,弹出如下图所示对话框;
图45子表信息
第二步:单击“添加子表”,弹出子表维护对话框,选择子表、关联类型(支持一对一、一对多),选择主表和子表关联字段(一般默认通过“自动创建主外键字段”按钮自动创建),单击“保存”即可添加成功。主子表添加成功后,针对主表的删除操作会连带删除子表。
图46子表关系维护
(2)编辑子表:选择一个已添加的子表关系,单击“编辑子表”可编辑子表关联信息。
(3)删除子表:不需要的子表关系,选择单击“删除子表”可将该关系删除。
(六)主子表关系整理
- 功能说明
当主子表关系错乱,即主表信息中的主表外键和子表外键现在对应不上,可使用该功能对矢量数据和属性表进行主子表关系整理,根据字段对应关系将主表和子表的记录一一对应,将主表外键字段值赋给子表外键字段。
- 操作说明
第一步:在数据表上右击,选择“主子表关系整理”,弹出如下图所示对话框;
图47主子表关系整理对话框
第二步:查看主表设置和子表设置是否正确,不正确进行修改,正确的话进行主子表字段对应关系设置;
主子表字段对应关系设置说明:除主表中主键字段和子表中的关联字段以外,选择另一个或多个能体现主子表对应关系的字段,且字段内容唯一。这里使用的是区划小班面中的每公顷蓄积量和角规信息表中的角规点公顷蓄积作为对应关系。如果主子表中都有政区、小班等信息也可以作为对应关系。
图48主子表字段对应关系设置举例
图49主子表字段对应关系设置
第三步:点击下一步,点击确定,提示关联成功。
第四步:点击主表的一条记录,子表显示与其挂接的子表记录。
图50查看关联效果
第五步:经查看,主子表的外键关联字段已经调整一致。
图51主子表关系整理前
图52主子表关系整理后
(七)重建空间索引
- 功能说明
依据空间对象的位置和形状或空间对象之间的某种空间关系按一定的顺序重新排列,针对表级别。目前平台基本采用RTree空间索引。
- 操作说明
在数据表上右击,选择【重建空间索引】。
(八)重排主键
- 功能说明
重新排列数据库主键,即pk_uid字段值的重新排列,针对表级别。
- 操作说明
在数据表上右击,选择【重排主键】。
(九)添加到地图
- 功能说明
将选中的矢量数据添加到图层管理器中。
- 操作说明
选择数据库中的矢量数据,单击鼠标右键,在弹出的菜单中选择“添加到地图”。
数据表字段编辑
- 功能说明
对数据表的字段进行添加、删除和编辑。
- 操作说明
(1)字段查找
第一步:在搜索框中输入字段名称,支持模糊查询;
图53字段查找
第二步:也可点击按钮,根据查询历史快速定位字段。
图54查询历史
注意:查询历史记录只在当前页面操作中生效,如果关闭数据管理重新打开,之前的历史记录自动清空。
(2)添加字段
第一步:选择数据库中的数据表,单击“添加字段”,弹出字段信息对话框;
图55字段信息对话框
第二步:输入字段的基本信息和扩展信息,单击“确定”,新增字段显示在字段列表中。
(3)批量添加字段
第一步:选择数据库中的数据表,单击“批量添加字段”,弹出字段来源选择对话框;
第二步:勾选字段来源,单击“确定”,弹出对话框,选择对应数据字段源,点击“确定”,新增字段显示在字段列表中。
(4)删除字段
第一步:选择数据库中的数据表,选中数据表中要删除的字段,单击“删除字段”,给出确认删除提示;
第二步:单击提示中的“确定”,则进行删除;单击“取消”,则取消删除操作。
(5)编辑字段
第一步:选择数据库中的数据表,选中数据表中要编辑的字段,单击“编辑字段”,弹出字段信息对话框;
第二步:只能编辑字段的扩展信息,包括字段别名、挂接字典项(挂接字典域修改时直接在弹出字典列表中进行选择即可),单击“确定”,保存修改。
(6)批量编辑字段
第一步:选择数据库中的数据表,单击“批量编辑字段”,弹出批量修改对话框;
第二步:只能编辑字段的小数位数、是否显示、是否只读,勾选要编辑的项,按需要设置要修改的内容,单击“确定”,保存修改。
(7)字段显示顺序调整
选择数据库中的数据表,选中数据表中要调整的字段,通过单击“上移”、“下移”、“置顶”、“置底”调整字段的显示顺序;或通过“高级移动”实现一次移动多个行数(负数向上、正数向下)。
(8)检查字段结构
用于检查数据表的字段长度和挂接字典是否有效
选择数据库中的数据表,单击“检查字段结构”开始检查,检查完成弹出检查结果提示,字典挂接问题提示如下图:
点击“是”,会清空所有错误的字典表和字典域;点击“否”,返回字段列表可手动修改错误
修改完成,再次检查字段结构,如无问题弹出提示,如下图:
(9)导出字段结构
将数据表的字段结构导出为Excel文件,选择数据库连接中的某一数据表,单击“导出字段结构”按钮,设置导出字段结构的目录与文件名,点击“保存”,字段结构保存到本地Excel格式。
(10)批量导出字段结构
选择数据库连接中的数据库,选择数据表单击右键,点击“批量导出字段结构”,弹出批量导出对话框,勾选要导出的数据表,或通过“全选”、“反选”按钮来选择要导出的数据表,设置导出路径,点击“确定”按钮,提示批量导出成功。
数据汉化
- 功能说明
将相同数据结构的字段别名和字典表进行汉化,如数据表未挂接字典,模板中挂接了字典汉化时会自动挂接字典。
- 操作说明
第一步:选择数据库中的数据表,单击“数据汉化”,弹出汉化来源选择对话框,系统提供字段结构模板和外部数据集两种汉化来源。
图56选择汉化来源
1)字段结构模板:字段结构模板为Excel格式,如下图所示:
2)外部数据:仅支持zdb格式外部数据
第二步:选择汉化来源为“字段结构模板”,点击“确定”,选择字段结构模板Excel文件,单击“打开”,可以将模板中的字段别名和字典域同步到数据表中,数据汉化完成。
或选择汉化来源为“外部数据”,点击“确定”导入,打开选择外部数据集对话框,选择汉化数据来源的外部数据,点击确定,外部数据中的字段别名和字典域同步到数据表中,数据汉化完成。
字典管理
- 功能说明
对系统字典表进行管理和维护,包括字典表的创建、删除、重命名、导入和导出;以及字典项的浏览、添加和修改。
- 操作说明
(1)创建字典表
第一步:数据管理界面在连接数据库上选择“字典表”右键弹出【创建字典表】;或选择连接数据库在右侧界面直接点击【创建字典表】按钮,打开创建字典表对话框,输入字典表名称、字典表别名,选择创建字典表结构类型;
注意:字典分政区数据字典和业务数据字典,不同类型字典表结构不同。
第二步:点击确定,字典表创建完成,如下图所示:
(2)导入字典表
选中字典表,单击“导入字典”,可以将Excel模板中的字典导入到系统字典表中。
(3)导出字典表
选中字典表,单击“导出字典”,可以将选中的系统字典表导出为Excel模板文件,字典表模板格式如下:
业务字典表包含:字典域、代码、名称、上级代码
政区字典表包含:代码、名称、上级代码
(4)删除字典表
选中要删除的字典表,弹出右键菜单,点击“删除数据”,弹出是否删除对话框,点击“是”,该字典表被删除;点击“否”取消删除操作
(5)重命名字典表
选中字典表,弹出右键菜单,点击“重命名”,弹出重命名对话框,修改表名、表别名,点击“确定”重命名字典表完成。
(6)字典浏览
选中字典表中的字典域,右侧显示字典域的描述信息,下方显示字典域中的字典项列表;
选中字典域下的字典项,右侧显示字典项的字典代码和字典名称,下方显示该字典项的下级列表。
(7)同级添加
选中字典域或字典项,单击“同级添加”,在右侧的字段值中填写对应的值,单击“保存”,保存后增加一个字典域或同级字典项。
(8)下级添加
选中字典域或字典项,单击“下级添加”,在右侧的字段值中填写对应的值,单击“保存”,保存后则为选中字典域或字典项增加一个子级字典项。
(9)删除
选中某个字典域,单击“删除”,可删除字典域和该域下的字典项。选中字典项;则删除字典项。
(10)编辑
选中字典域或字典项,在右侧的字段值中修改对应的值,单击“保存”,即可保存对字典的编辑。
(11)字典分级管理
例如政区字段需要挂接不同级别的字典,所以政区字典创建时需要分级创建和管理,如下图所示创建,
图59字典分级管理
创建后在挂接字典时需要选择到对应级别进行挂接,如下图所示:
图60分级字典挂接