一些名词解释:
Dbclient 即DBMS类型,包括sqlServer 、Oracle10g 、Oracle11g 、Postgresql 、Informix 、DB2 、DB2ZOS
Serverinstance 对应下图的服务器名称
Database 具体数据库
authentication_mode 身份验证方式,包括DBMS(有效用户名验证)和OSA(操作系统身份验证),默认为DBMS
user 用户名
password 密码
一. 用IWorkspaceFactory或IWorkspaceFactory2的 Open 方法
Type factoryType=Type.GetTypeFromProgID("esriDataSourcesGDB.sqlWorkspaceFactory"); IWorkspaceFactory workspaceFactory =(IWorkspaceFactory)Activator.CreateInstance (factoryType); IPropertySet connectionProps = new PropertySetClass(); connectionProps.SetProperty("dbclient","Oracle11g"); connectionProps.SetProperty("serverinstance","MyServer"); connectionProps.SetProperty("authentication_mode","DBMS"); connectionProps.SetProperty("user","MyLogin"); connectionProps.SetProperty("password","MyPassword"); IWorkspaceworkspace = workspaceFactory.Open(connectionProps,0);
二. 用IWorkspaceFactory2.OpenFromString方法
Type factoryType =Type.GetTypeFromProgID("esriDataSourcesGDB.sqlWorkspaceFactory"); IWorkspaceFactory2workspaceFactory2=(IWorkspaceFactory2) Activator.CreateInstance(factoryType); String[] connectionProps = { "dbclient=sqlServer","serverinstance=MyMachine\\sqlExpress","database=MyDatabase","authentication_mode=OSA" }; String connString = String.Join(";",connectionProps); IWorkspace workspace = workspaceFactory2.OpenFromString(connString,0);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。