IWorkSpace接口介绍 1.打开各种数据库
IWorkspace接口提供访问工作空间的通用属性和方法,如它的连接属性,以及包含的数据集的方法。
IWorkspace的成员字段:
Members
Description |
|
The connection properties of the workspace. |
|
The DatasetNames in the workspace. |
|
The datasets in the workspace. |
|
Executes the specified SQL statement. |
|
Checks if the workspace exists. |
|
TRUE if the workspace is a file system directory. |
|
The file system full path of the workspace. |
|
The Type of the Workspace. |
|
The factory that created the workspace. |
如何打开一个数据库
要打开一个数据库,也就意味着我们要得到那个工作空间,而工作空间是一个普通类,也就意味着我们只
能从其他类来得到这个工作空间,这个类就是工作空间工厂(WorkspaceFactory),而这个类又是一个抽
象类,也就意味着我们只能使用它的子类来实例化一个对象,WorkspaceFactory有众多的子类
IWorkSpaceFactory是Geodatabase的入口,它定义了数据库的通用属性,比如打开,创建等,我们在ArcGIS Engine的帮助中可以详细的得到它的信息,如下图:
Members
Description |
||
Indicates if parentDirectory contains a valid workspace, or is a valid file-system workspace. |
||
Copies a workspace to the specified destination folder. |
||
Creates a new workspace specified by the directory, file name, and connection properties. |
||
The class ID of the WorkspaceFactory. |
||
Retrieves the workspace name of a workspace from the given list of file names. |
||
True if the specified file identifies a workspace supported by the workspace factory. |
||
Moves a workspace to the specified destination folder. |
||
Opens the workspace specified by the connection properties. |
||
Opens the workspace specified by the given file name. |
||
The connection properties from the specified file. |
||
A singular or plural description of the type of workspace the workspace factory opens/creates. |
||
The type of workspace the workspace factory opens/creates. |
打开数据库有两种方式,从上面的图表中也可以看出OpenFromFile方法和Open方法,这两者的区
方法中的参数不同,其中Open方法需要一个IPropertySet对象,这个方法我们经常在打开SDE数
使用,注意(这个方法同样可以用来打开个人数据库,文件数据库)。
打开个人数据库
public IWorkspace GetMDBWorkspace(String _pGDBName)
{
IWorkspaceFactory pWsFac = new AccessWorkspaceFactoryClass();
IWorkspace pWs = pWsFac.OpenFromFile(_pGDBName,0);
return pWs;
}
}
打开文件数据库
public IWorkspace GetFGDBWorkspace(String _pGDBName)
{
IWorkspaceFactory pWsFac = new FileGDBWorkspaceFactoryClass();
IWorkspace pWs = pWsFac.OpenFromFile(_pGDBName, 0);
return pWs;
}
打开SDE数据库
打开SDE数据库我们使用的是Open方法,要用这个方法,我们就要对IPropertySet对象设置,要打开SDE
数据库,我们要获取SDE数据库的服务器地址,数据库实例,数据库,用户,密码等参数。而IPropertySet
就好比一个Key-Value的对象,用来帮组我们设置这些,然后传到Open方法中。
public IWorkspace GetSDEWorkspace(String _pServerIP, String _pInstance, String _pUser, String
_pPassword, String _pDatabase, String _pVersion)
{
ESRI.ArcGIS.esriSystem.IPropertySet pPropertySet = new
ESRI.ArcGIS.esriSystem.PropertySetClass();
pPropertySet.SetProperty("SERVER", _pServerIP);
pPropertySet.SetProperty("INSTANCE", _pInstance);
pPropertySet.SetProperty("DATABASE", _pDatabase);
pPropertySet.SetProperty("USER", _pUser);
pPropertySet.SetProperty("PASSWORD", _pPassword);
pPropertySet.SetProperty("VERSION", _pVersion);
ESRI.ArcGIS.Geodatabase.IWorkspaceFactory2 workspaceFactory;
workspaceFactory = (ESRI.ArcGIS.Geodatabase.IWorkspaceFactory2)new
ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactoryClass();
return workspaceFactory.Open(pPropertySet, 0);
}
IWorkSpace接口介绍 1.打开各种数据库的更多相关文章
- IWorkSpace接口介绍
IWorkspace接口提供访问工作空间的通用属性和方法,如它的连接属性,以及包含的数据集的方法. 如何打开一个数据库 要打开一个数据库,也就意味着我们要得到那个工作空间,而工作空间是一个普通类,也 ...
- 如何删除要素类 IFeatureWorkspace 接口介绍(1)
如何删除要素类 要想删除一个要素类,那么必须先得到这个,在得到这个要素类的时候,我们要学习一个新的接口IFeatureWorkspace. IFeatureWorkspace 接口介绍 这个接口主要 ...
- ArcEngine打开本地数据库
先看一下GeoDatabase核心结构模型图: 1 工作空间工厂WorkspaceFactory对象 WorkspaceFactory是GeoDatabase的入口,是一个抽象类,拥有很多子类,例如 ...
- Hive 接口介绍(Web UI/JDBC)
Hive 接口介绍(Web UI/JDBC) 实验简介 本次实验学习 Hive 的两种接口:Web UI 以及 JDBC. 一.实验环境说明 1. 环境登录 无需密码自动登录,系统用户名shiyanl ...
- 通过ODBC接口访问人大金仓数据库
国产化软件和国产化芯片的窘境一样,一方面市场已经存在性能优越的同类软件,成本很低,但小众的国产化软件不仅需要高价买入版权,并且软件开发维护成本高:另一方面,国产软件目前普遍难用,性能不稳定,Bug ...
- SSH动态查询封装接口介绍
SSH动态查询封装接口介绍 1.查询记录总条数 public int count(Class c,Object[][] eq,Object[][] like,String[] group,String ...
- 【百度地图API】如何在地图上添加标注?——另有:坐标拾取工具+打车费用接口介绍
原文:[百度地图API]如何在地图上添加标注?--另有:坐标拾取工具+打车费用接口介绍 摘要: 在这篇文章中,你将学会,如何利用百度地图API进行标注.如何使用API新增的打车费用接口. ------ ...
- Redis --> Redis的接口介绍及使用
Redis的接口介绍及使用 Redis是一个远程内存数据库,它不仅性能强劲,而且还具有复制特性以及为解决问题而生的独一无二的数据模型.Redis提供了5种不同类型的数据结构,各式各样的问题都可以很自然 ...
- go语言之进阶篇文件常用操作接口介绍和使用
一.文件常用操作接口介绍 1.创建文件 法1: 推荐用法 func Create(name string) (file *File, err Error) 根据提供的文件名创建新的文件,返回一个文件对 ...
随机推荐
- 第7章 一个java源文件中只能有一个public类
一个Java源文件中最多只能有一个public类, 1)当有一个public类时,源文件名必须与之一致,否则无法编译, 2)如果源文件中没有一个public类,则文件名与类中没有一致性要求. 至于ma ...
- 中文输入法不触发onkeyup事件的解决办法
当监听一个input的keyup的事件的时候,英文输入法的情况下可以实时的通过keyup事件检测到文本框value的变化,但是当输入法变成中文后,input的keyup事件就不会被正常触发. 方法:o ...
- curl continue
http://www.cyberciti.biz/faq/curl-command-resume-broken-download/
- TextUtils
/** * 计算关键字在文本中出现的次数 * @param text * @param key * @return */ public static int count(String text, St ...
- java memcache应用
import java.io.Serializable; import java.text.DateFormat; import java.util.Date; import java.util.Ma ...
- 【stack】模拟网页浏览 poj 1028
#include<stdio.h> #include<string.h> int main() { ][]; ]; int i,depth; strcpy(s[]," ...
- Sockets
Sockets time limit per test 2 seconds memory limit per test 256 megabytes input standard input outpu ...
- JQuery Each循环遍历每个元素
输出每个 li 元素的文本: $("button").click(function(){ $("li").each(function(){ alert($(th ...
- phpStudy环境配置多个站点,绑定域名
经常做网站的朋友,往往要在自已的电脑同时建立多个站点,而phpstudy这款软件就能很好的解决这个问题,大家看下图 点击上图中的 其它选项菜单 ,就会弹出下面的对话框,然后点击 站点域名管理 然 后在 ...
- 在WIN7/8下把XP装入VHD (下)
系统平台:win8.1,安装在C盘 操作目的:在win8.1下装一个VHD XP. 操作方法: 在http://www.cnblogs.com/mahocon/p/5212914.html里贴了一个 ...