数据源类。
该类管理投影信息、数据源与数据库的连接信息和对其中的数据集的相关操作,如通过已有数据集复制生成新的数据集等。
程序集: SuperMap.Data (in SuperMap.Data)
版本: dll
语法
C# |
---|
public class Datasource |
备注
每个数据源对应一种数据引擎。SuperMap产品中提供了多种数据源类型,分为文件型数据源、数据库型数据源和 Web 数据源。如 UDB 数据源属于文件型数据源;Oracle、SQL Server、MySQL、PostgreSQL 和 DB2 数据源属于数据库型数据源;OGC、GoogleMaps、超图云服务、REST 地图服务和天地图地图服务数据源属于 Web 数据源。
当单个Geometry比较大时,MySQL数据库型数据源需要修改配置文件,因为MySQL会根据配置文件限制服务端接受的数据包大小,导致写入或更新失败。修改方法:打开MySQL安装目录下的mysql.ini配置文件,根据Geometry数据大小设置合适的max_allowed_packet;若无法打开配置文件,也可以在MySQL命令行中设置:set global max_allowed_packet=?。完成配置后需要重启MySQL服务。
数据源定义了一致的数据访问接口和规范。数据源的物理存储既可以是文件方式,也可以是数据库方式。区别不同存储方式的主要依据是其所采用的数据引擎类型:采用 UDB 引擎时,数据源以文件方式存储(*.udb,*.udd)——文件型数据源文件用 udb 文件存储空间数据,udd 文件存储属性数据,采用空间数据库引擎时,数据源存储在指定的DBMS 中。
数据源对象通常作为工作空间中数据源集合中的一个元素。可以对数据源进行保存操作、对数据集进行复制操作。
一个工作空间可以打开多个数据源,不同的数据源通过不同的别名(Alias)进行标识。
其中值得一提的是我们假设数据源中的数据都使用同样的单位和空间参考系。
通过 IsAutoConnect 属性可以设置数据源是否自动连接,当选择自动连接的时候,在打开工作空间时,数据源会自动连接数据库中的数据。由于数据集默认是不打开的,所以如果要对数据集的数据进行修改或其他操作,可以通过 Dataset 类中提供的 Open 方法来实现打开数据集操作,否则数据集处于关闭状态。
继承层次
SuperMap.Data..::.Datasource