DLG数据库批量合成
那天看还有99个关注呢,结果今天降到98了,好伤心,但是技术文章还是要总结,总结完继续给大家共享。希望大家不要取关,多互动呀
数据库合库
如上图,所有的数据库都在一个DLG文件夹中
实例介绍:
对DLG文件夹进行循环
选择数据:插入selectdata工具,仅在模型构建器中可以使用。
每次选择一种要素,对这种要素进行合库,使用Feature class toGeodatabase (multiple)输入到同一个数据库中。
由于模型构建器一次只能进行一个循环,因此只能构建一个新的模型进行要素的合并。
Python代码:
# -*- coding: utf-8 -*-
# ---------------------------------------------------------------------------
# InportDataBase.py
# Created on: 2018-11-04 16:59:43.00000
# (generated by ArcGIS/ModelBuilder)
# Description:
#---------------------------------------------------------------------------
# Import arcpy module
import arcpy
# Load required toolboxes
arcpy.ImportToolbox("ModelFunctions")
# Local variables:
DLG = "G:\\山东黄河三角洲国家级自然保护区\\DLG"
Workspace = DLG
Name = "J50G058080"
Output_Data_Element = Workspace
DYDLG_gdb = "G:\\山东黄河三角洲国家级自然保护区\\DLGCB\\DYDLG.gdb"
DYDLG_gdb__2_ = DYDLG_gdb
# Process: Iterate Workspaces
arcpy.IterateWorkspaces_mb(DLG,"", "", "NOT_RECURSIVE")
# Process: Select Data
arcpy.SelectData_management(Workspace,"CPTP")
# Process: Feature Class to Geodatabase(multiple)
arcpy.FeatureClassToGeodatabase_conversion("G:\\山东黄河三角洲国家级自然保护区\\DLG\\J50G058080.mdb\\CPTP", DYDLG_gdb)
要素类合并
对Feature Class进行循环,追加
Schema Type要选择Notest,防止有部分数据由于属性表有缺失等问题导致追加失败
注意:CPTL是从上一个库中剪切来的,这样就不存在追加两次的情况了,不会产生重复。
修改如下两块即可
每个模型运行过后,修改完参数建议打一下对钩,让模型整个重新运行,防止出现模型运行不全的错误!