实验三地理信息系统数据管理一、实验目的掌握数据组织、管理与维护方法,理解数据库连接技术,辨析MapInfo的数据管理模式二、实验分组每人一组,独立完成三、实验内容文件格式数据结构文件组织表管理ODBC接口集成管理实现方式远程数据库访问MapInfo的数据管理模式地理信息系统数据管理模式四、方案设计(要求)(一)表及其数据组织1. 阅读材料地理信息系统将数据按逻辑模型组织,并编码为文件。
MapInfo中数据库称为表(标准表),表又分数据表和栅格表两大类。
数据表又分为包含图形信息对象的数据表和不包含图形信息对象的数据表,包含图形信息对象的数据表涵盖空间数据与属性数据。
数据表由行(元组、记录)记录对象,列(字段)是要素的属性分类。
栅格表与数据表不同,它没有记录、字段、索引等表结构,它只是一种可以在地图窗口中可以显示的对象。
MapInfo通过表的形式将数据与地图有机地结合在一起。
打开或输入数据时,将创建一个表,产生一系列文件。
一个典型的MapInfo表将主要由*.tab、*.dat、*.map、*.id、*.ind以及*.wks、*.dbf、*.xls等文件格式组成。
*.tab:属性数据结构文件,定义要素属性数据的表结构,包括字段数、字段名称、字段类型和字段宽度,索引字段以及相应图层(layer)的一些关健空间信息描述。
.tab文件实际上是个文本文件。
*.dat:属性数据文件,存放要素的属性数据。
在文件头之后为表结构描述,其后首尾相接地记录各要素的属性数据。
*.map:空间数据文件,具体包含了各要素的空间点、线、面数据(类型与坐标)及其样式信息,还描述了与该空间对象对应的属性数据记录在属性数据文件(.dat)中的记录号。
*.id:图形对象文件(*.map)的索引文件。
用于把表中的图形对象与数据连接起来。
*.ind:表格文件(*.dat)的索引文件。
使得用户能够使用查找命名查找图形对象。
*.wks:LOTUS 1-2-3格式的表格数据文件;*.dbf:dBASE/FoxBASE格式的表格数据文件;*.xls:Microsoft Excel格式的表格数据文件;*.txt:用于存贮SACII格式的表格数据;*.mid:用于表格数据的MapInfo转入/转出;*.mif:用于图形数据的MapInfo转入/转出;*.wor:工作空间文件,用于保存有关在某次MapInfo交互中所使用的表和窗口的信息。
*当打开.tab文件时,即可打开MapInfo表,就是同时打开相关的所有文件。
MapInfo又按图层组织地图,每个图层对应一个可地图化的表。
创建一个图层时都要建立一张表。
在地图窗口最上面的是空白透明装饰图层,它总是被显示。
文字注记也是特殊的图层。
MapInfo采用空间实体加空间索引的拓扑数据模型。
采用R-Tree将空间实体的最小外接矩形存储在索引表中,并由大到小索引。
分别选择实验二结果的一个点、线、面图形对象(先打开表),双击查看返回的空间索引,截图插入结果1。
思考空间索引的作用写入体会1。
2. .tab 表结构。
利用任一文字处理软件,打开一个.tab 文件(右击文件>打开方式>选择Word/记事本/写字板,□不要勾选“始终使用选择的程序打开这种文件”;或从文字处理软件中,选定类型,读出),查看,截图,放在结果2。
解释其含义,写入体会2。
关闭表。
3. 打开表。
MapInfo 打开表时,使用鼠标框选或配合Shift 、Ctrl 可顺序或任选多文件。
请同时打开实验二全部实验成果(*.tab),浏览一属性数据(),平铺窗口,截图放入结果3。
说明属性文件结构和表达的内容,写入体会3中。
查找并尝试打开实验数据/实验用机中已存在/自建的分界ASCII 文件、文本文件(.txt )、dBase 、Access 、Lotus 1-2-3和ArcView (.shp )文件,截图放入结果4。
并考虑若其中含工作区坐标数据,能够将其可视化吗?写入体会4。
4. .map 数据结构。
为层次结构,文件均与层对应。
试用MapInfo 打开.map 文件(找到.map ,右键选MapInfo 安装目录的MapInfow.exe ),结果入5项*。
观察情况,结合实验二的数字化过程、上述介绍和课堂学习回答文件的作用.......,文件的数据结构组织.........。
写入体会5。
5. 保存工作空间。
菜单>保存工作空间>文件名改为E1.wor 。
单击文件菜MapInfo 。
6. 打开工作空间。
找到你保存的工作空间文件,双击,MapInfo 自动启动到保存时的状态。
7. 查看.wor 文件。
利用任何文字处理软件(如记事本)打开任何工作空间文件(*.wor),找出其中的Open Table 语句,粘贴到实验结果6中。
8. 工作空间结构。
删除或改变指定表的位置后,工作空间能正常打开吗?结果写入实验体会6处。
9. 复制表。
打开所建文件夹,查看实验二的几组MapInfo 文件,查看相同文件名(后缀不同)的文件有几个?拷贝实验二成果的.tab (仅.tab )到新文件夹,看打开情况,其与文件组织有何关系?...........怎样..正确..复制表...?.写入..体会..7.。
.(二)、表维护与管理1. 表管理涉及新建(打开)到管理、维护直至删除的全过程。
以上我们已进行了新建表、打开表、保存表、复制表、更新表、结构修改的实验。
2. 删除表。
前提是至少有1张表被打开。
表>维护>删除表,选定无用的表,当在提示框确定后指定的表将被永久删除。
注意在删除MapInfo 打开的ASCII 、dBASE.DBF 、Lotus 、Excel 文件时将同时删除MapInfo 创建的.tab 文件以及原始文件;而删除栅格图象时,则仅将.tab 文件(MapInfo 配准文件)更名,而不实际删除栅格图象文件。
可设计实验进行验证。
3. 紧缩表。
表>维护>紧缩表>设置。
说明实验二紧缩..表操作的作用和.......结果..。
(三)、处理数据库连接和空间数据引擎[选做]**本实验平台配置不足,有兴趣的同学可参考实验参考资料,自行配置并实验。
除Oracle 外,MapInfo 通过ODBC 来访问数据库,效率较低。
MapInfo 支持通过OCI 同时连接到Oracle 和通过ODBC 连接到其它数据库。
MapInfo 也不支持使用当前Merant 的ODBC 驱动器通过ODBC 下载Oracle 空间几何表。
但很多组件为可选组件或外部组件,需自行安装并配置。
为了正常运行,MapInfo DBMS 连接需要许多准备好的组件——可选择的数据库管理系统(Oracle 、MS Access 、Informix 等,只有当DBMS 和平台软件安装在同一台PC 机时才需要);DBMS 所需的网络支持( 、MS Acess-不需要),MapInfo 的可选安装组件Merant 的ODBC 驱动器和MapInfo ODBC 支持。
接下来在DBMS 的管理器中自定义数据源。
高版本MapInfo 的数据库连接功能有所加强。
1. ODBC 表打开。
选择文件>打开ODBC表,打开ODBC表的菜单选项启动一系列的对话,它们可支持将ODBC表或查询结集下载为MapInfo链接表下载目的可以是读或更新该过程被构造成一个“向导”。
ODBC表是驻留在远程SQL数据库,如Oracle、Sybase、Access等上的表。
可创建、选择表,生成链接表和实时访问表。
2. Oracle Spatial。
Oracle Spatial是Oracle数据库公司空间数据库的执行程序。
要在MapInfo中连接Oracle,必须安装Oracle Spatial v.8.1.6或v.8.1.7及9i 客户机。
具备创建远程表主索引,大型DBMS表的实时访问,使用专家按钮输入SQL 查询等功能。
SpatialWare是高效存储、管理和维护空间数据管理工具,是完整的基于服务器的空间信息管理系统。
SpatialWare允许空间数据与先进的商业数据库管理系统如IBM DB2、Microsoft SQL Server 和Oracle 8i以上版本、Informix的所有数据实现轻松的无缝整合,支持大量空间数据的集中存储和管理。
MapInfo SpatialWare在数据库环境中实现了基于SQL 的空间访问、分析和建模,提升客户的商业分析能力。
MapInfo SpatialWare软件组成主要包括:空间数据对象(提供存储机制和必要的功能,便于存储、检索和维护空间数据的内容,同时,数据类型还可以由客户端软件派生出其他有用的数据类型。
存储在数据类型中的几何图形以二维或三维形式存在。
数据类型和SQL 功能建立在ISO SQL 、多媒体标准、Open GIS标准之上)。
空间索引(借助索引空间数据的Range-Tree (R 树)技术实施空间索引方案。
R 树索引适合于分布式类型,尤其是空间数据,无需数据知识即可获得优化结果)。
空间操作(包含150 多种扩展符,它们通过计算在表格中检索数据,或者以几何关系筛选数据。
扩展符有ISO 标准规定的内容,以及MapInfo 客户需要的其他操作符,例如坐标系统支持、距离、圆心和凸包计算)等。
能够跨平台支持(支持Sun Solaris,Windows NT or 2000, and HP-UX),进行灵活的数据上载和交换(数据上载通过两种方式可以完成:通过标准的SQL命令将ASCII数据加入到数据库中;通过MapInfo 提供的Easy Loader 工具将TAB数据上载到数据库中。
其他格式的数据如DXF、DWG、E00等可以由MapInfo提供的通用转换器转换成TAB后上载到数据库中),使用标准SQL用于数据访问,所有数据以对象形式存储,提供6大类150种函数,可以分析并操作空间数据,基于标准的空间操作符如缓冲、包含、邻角、覆盖、长度、倾斜、集合、面积和周长及高级SpatialWare操作符扩展如距离、凸包、清除、旋转、交叉等,有空间判别谓词,可分析空间数据是否满足条件,返回值为真或假,有空间测量函数,返回数值型数据描述空间对象的形状、大小、角度、旋转和位置,例如“长度”、“周长”、“高度”,同时适用于笛卡尔坐标系和球面坐标系,有空间操作函数,对空间数据类型进行操作,并返回空间数据类型的数据。
例如,合并两个空间对象的操作生成并返回合并后的新的空间对象;或者缓冲区函数返回按用户指定距离为空间对象生成缓冲区,支持包括Professional、MapX、MapXtreme、MapXtreme2005多种客户端,支持1000种预定义坐标系统以及定制的用户投影系统,借助商业软件如Delphi 或Visual Basic 为SpatialWare 提供一条开放的联系纽带,进行ODBC客户连结。