ArcEngine创建企业地理数据库(20190701)

在项目上,经常需要针对不同的分析、需求建立不同的数据库,本文就基于ArcEngine实现这一功能。这一功能在ArcGIS中相当于“Data Management Tools–>Geodatabase Administration–>Create Enterprise Geodatabase”工具。当然,我是因为接手了任务才知道建立企业数据库,对企业数据库的原理和优缺点也并不是特别了解,如果比较了解的朋友可以在评论区评论,相互学习
参考ArcGIS中创建企业地理数据库的工具,在vs2017开发环境下,基于DevExpress插件对功能的界面进行了设计,数据库类型有三种可选,分别是SQL Server、PostgreSQL、Oracle,因为进行的项目是基于PostgreSQL数据库,因此先预留其他两种数据库的接口,但是原理应该都差不多,许可文件为ecp文件,网上可以下到,在上传的github项目中Resource文件夹里也有,可以自行下载:
创建地理数据库功能界面设计
后端代码实现主要是CreateEnterpriseDB方法,方法的参数有数据库类型、IP地址、待建立的数据库名、数据库用户名及密码、地理数据库用户名及密码、许可路径八个参数。注意数据库的命名规范,命名不规范会报错,我的代码中只列举了两条,不知道还有没有其他规范,也欢迎各位高手进行补充。

 #region 数据库的建立
        /// <summary>
        /// 创建企业地理数据库
        /// </summary>
        /// <param name="DB_platform">数据库类型</param>
        /// <param name="instance">IP地址</param>
        /// <param name="DB_Name">数据库名</param>
        /// <param name="DB_admin">数据库用户名</param>
        /// <param name="DB_pwd">数据库密码</param>
        /// <param name="GDB_admin">地理数据库用户名</param>
        /// <param name="GDB_pwd">地理数据库密码</param>
        /// <param name="auth_path">许可路径</param>
        /// 
        public void CreateEnterpriseDB(string DB_platform,string instance,string DB_name,
            string DB_admin,string DB_pwd, string GDB_admin, string GDB_pwd,string auth_path)
        {
            Geoprocessor gp = new Geoprocessor();
            gp.OverwriteOutput = true;
            CreateEnterpriseGeodatabase ceGDB = new CreateEnterpriseGeodatabase();
            ceGDB.database_platform = DB_platform;
            ceGDB.instance_name =instance;
            ceGDB.database_name = DB_name;
            ceGDB.database_admin =DB_admin;
            ceGDB.database_admin_password = DB_pwd;
            ceGDB.gdb_admin_name = GDB_admin;
            ceGDB.gdb_admin_password = GDB_pwd;
            ceGDB.authorization_file = auth_path;

            gp.Execute(ceGDB, null);
        }
        #endregion

本功能的源代码已上传至github,欢迎各路大侠进行修改补充:https://github.com/ranhongwu/190701CreateEnterpriseDB ,同时,在文章中的问题也希望知道的高手们在评论区进行补充。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值