ArcEngine连接Oracle数据库
2024-09-02 15:54:30
问题1:
最近写服务需要用ArcEngine连接Oracle数据库,以前连接数据库都会弹出一个窗体。然后填好之后就可以连接了,这样很麻烦。
代码如下:
private bool ConnectToSde()
{
IWorkspace workspace;
ESRI.ArcGIS.esriSystem.IPropertySet pPropset = new ESRI.ArcGIS.esriSystem.PropertySet();
IWorkspaceFactory pWorkspaceFact = new SdeWorkspaceFactory();
pPropset.SetProperty("server", "localhost");
pPropset.SetProperty("database", "database");
pPropset.SetProperty("user", "user");
pPropset.SetProperty("password", "password");
pPropset.SetProperty("version", "SDE.DEFAULT");
workspace = pWorkspaceFact.Open(pPropset, );
return true;
}
运行到 workspace = pWorkspaceFact.Open(pPropset, 0);的时候就会弹出一个ArcCatalog连接数据库的窗体,如下图所示:
原因:
原因是在填写属性的时候没有设置实例(INSTANCE)。
解决办法:
正确代码如下:
private bool ConnectToSde()
{
IWorkspace workspace;
ESRI.ArcGIS.esriSystem.IPropertySet pPropset = new ESRI.ArcGIS.esriSystem.PropertySet();
IWorkspaceFactory pWorkspaceFact = new SdeWorkspaceFactory();
pPropset.SetProperty("server", "localhost");
pPropset.SetProperty("INSTANCE", "sde:oracle11g:localhost/database");//如果没有设置INSTANCE属性,会有连接窗体弹出
pPropset.SetProperty("database", "database");
pPropset.SetProperty("user", "user");
pPropset.SetProperty("password", "password");
pPropset.SetProperty("version", "SDE.DEFAULT");
workspace = pWorkspaceFact.Open(pPropset, );
return true;
}
问题2:
在连接Oracle数据库的时候,如果INSTANCE属性填写错误就会出现如下问题 SDE not running on server。
解决办法:
见问题1解决办法贴出来的代码。
注意:SQL Server INSTANCE为:
pPropset.SetProperty("INSTANCE", "sde:sqlserver:localhost")
最新文章
- python css基本操作
- 修改 phpmyadmin 创建数据库默认编码
- centos安装php-memcached扩展及cas用法
- APP都有哪些类型?
- ajax温习
- C#关于MSMQ通过HTTP远程发送专有队列消息的问题
- 802.11 wireless 二
- 小小地预览HTML5
- HDU 5105 Math Problem
- Boost Thread学习笔记
- Spark源码剖析(八):stage划分原理与源码剖析
- SQL 语句 (二) --- SELECT
- elasticsearch简单操作
- javascript中的LHS与RHS
- mysql链接
- vim在系统剪切板的复制与粘贴
- Struts2 Web Project 实现中文、英语的切换
- Java转换Word文件到PDF文件
- CSS 再学习,基础篇
- 探究Linux进程及线程堆栈专题<;一>;
热门文章
- IDEA sql自动补全/sql自动提示/sql列名提示
- SpringBoot+Thyemleaf开发环境正常,打包jar发到服务器就报错Template might not exist or might not be accessible
- 21个项目玩转深度学习:基于TensorFlow的实践详解02—CIFAR10图像识别
- 关于Character的digit,forDigit,getNumericValue方法的一点理解
- 【u202】家庭作业
- java编译器优化和运行期优化
- H3C 链路聚合的作用
- Priest John&#39;s Busiest Day (2-sat)
- PowerShell 通过 WMI 获取系统服务
- jdk8下面的ArrayList的扩容