北向数据库
1. 空间数据库的组成部分
空间数据库指的是地理信息系统在计算机物理存储介质上存储的与应用相关的地理空间数据的总和,一般是以一系列特定结构的文件的形式组织在存储介质之上的。《空间数据库》范围及重点 1. 第一章:绪论 1) 空间数据库基本概念、组成部分、名称简写之间的联系与区别与联系; 答;利用当代的系统方法,在地理学、地图学原理的指导下,对地理空间进行科学的认识与抽象,将地理数据库化为计算机处理时所需的形式与结构,形成综合性的信息系统技术——空间数据库 或者SDBMS是海量SD的存储场所、提供SD处理与更新、交换与共享,实现空间分析与决策的综合系统。 组成:存储系统、管理系统、应用系统 是SDBS的简称 2) 目前空间数据库实现方案; 答:ORDBMS 3) GIS,RS与空间数据库之间的联系; 4) 常见的空间数据库产品 答:轻量级: MS的Access、FoxPro、 SUN的Mysql 中等:MS的SQL Server系列 重量级:Oracle的Oracle 不太熟悉的有: Sybase、Informix、DB2 、Ingress、 PostgreSQL(PG)等 5) 产生空间数据库的原因; 答:直接利用? SD特征 :空间特性 非结构化特征 空间关系特征 多尺度与多态性 海量数据特性 存在的问题:复杂图形功能:空间对象 复杂的空间关系 数据变长记录 6)空间数据库与普通关系数据库的主要区别。 答:关系数据库管理属性数据,空间数据采用文件库或图库形式;增加大二进制数据类型(BLOB),解决变长数据存储问题;将空间数据/属性数据全部存放在数据库中;但空间特性由程序处理 2. 第二章:空间数据库模型 1) 如何理解空间数据库模型; 2) 空间数据及空间关系; „ (1) 空间数据类型 几何图形数据 影像数据 属性数据 地形数据 元数据:对空间数据进行推理、分析和总结得到的关于数据的数据, 数据来源、数据权属、数据产生的时间 数据精度、数据分辨率、元数据比例尺 地理空间参考基准、数据转换方法… (2) 空间关系 指地理空间实体之间相互作用的关系: 拓扑关系:形状、大小随投影改变。在拓扑变换下不变的拓扑变量,如相邻、包含、相交等,
反映空间连续变化的不变性 方位关系:地理空间上的排列顺序,如前后、上下、左右和东、南、西、北等方位 度量关系:距离远近等 3) 空间数据库如何建模; DB设计三步骤 ‹ Conceptual Data Model:与应用有关的可用信息组织、数据类型、联系及约束、不考虑细节、E-R模型 Logic Data Model 层次、网状、关系,都归为关系,SQL的关系代数(relational algebra, RA) Physical Data Model:解决应用在计算机中具体实现的各种细节,计算机存储、数据结构等 4) 模型之间如何转换? 5) 可行的空间数据库建模方案。 面向对象的空间数据库模型GeoDatabase 3. 第三章:空间数据库存储与索引 1) 空间数据如何组织、存储的,采用什么技术或者方法; 为有效表达空间信息内容,空间数据必须按照一定的方式进行组织与存储:适合外存操作的数据结构、记录和文件的多种组织方式 SDB空间数据组织:数据项、记录、文件、数据库 SDB空间数据存储:二级存储器、缓冲区管理器、空间聚类(clustering)、空间索引 2) 空间近似与空间聚类; 目的:降低响应大查询的寻道时间和等待时间,在二级存储中空间上相邻的/查询上有关联的空间对象在物理上存放在一起, 内部聚类(internal clustering):加快单个对象的访问,一个对象都存放在一个磁盘块(页面);如超出则存放在连续扇区,本地聚类(local clustering):加快多个对象访问。一组空间相邻对象存放在一个页面 空间聚类比传统聚类技术复杂。多维空间对象无天然的顺序 磁盘:一维存取,高维:将高维映射到一维, 一一对应,保持距离(distance preserving):一一对应,容易;距离不变,近似,映射技术、Z序(z-order)、Hilbert曲线 3) 空间数据库性能提升的关键问题是什么?如何提升; 数据库索引,基于树:ISAM、B树、B 树等,基于Hash:静态、可扩展、线性等 4) 空间索引技术是什么?为什么产生?有哪些常见的空间索引;各有何特点及适用范围? 依据空间对象的位置和形状或者空间对象之间的空间关系,按一定顺序排列的一种数据结构,介于空间操作算法和空间对象之间,通过筛选,大量与特定空间操作无关的空间对象被排除,提高效率,空间数据库关键的技术 空间索引产生的原因:空间数据的特点:空间定位、空间关系、多维、多尺度、海量、复杂,传统数据库索引处理的一维的字符、数字,对多维处理采用组合字段 1、基于二叉树的索引技术:二分索引树结构主要用于索引多维数据点;对复杂空间目标(线、面、体等)的索引却必须采用近似索引方法和空间映射技术 2、 基于B树的索引技术 ‹B树的变体如R树系列,外包矩形;对大型数据库具有出色表现;需要解决:减少区域重叠,提高搜索效率 3、基于哈希的网格技术
2. 全站仪N(北向坐标)代表的是X轴还是Y轴
全站仪里的N输入的是坐标X。
全站仪几乎可以用在所有的测量领域。电子全站仪由电源部分、测角系统、测距系统、数据处理部分、通讯接口、及显示屏、键盘等组成。
同电子经纬仪、光学经纬仪相比,全站仪增加了许多特殊部件,因此而使得全站仪具有比其它测角、测距仪器更多的功能,使用也更方便。这些特殊部件构成了全站仪在结构方面独树一帜的特点。
坐标计算一般主要应用于测绘工程、建设工程之中,具体在建筑设计,工程测量,测绘制图等领域。总的来说坐标计算分为坐标正算和坐标反算两种,这两种在实际中是较常见的。
坐标反算
根据直线的起点和终点的坐标,计算直线的水平距离和坐标方位角的过程叫坐标反算。
坐标正算
根据直线的起点坐标、直线的水平距离以及坐标方位角来计算终点的坐标的过程叫坐标正算。
(2)北向数据库扩展阅读
在使用全站仪测量时,使用坐标测量应该注意:建站建好后在建立一个文件,将该文件作为存储数据的文件夹,以便导出数据,根据一起的不同,操作也不一样,比如南方的就比较好用。
坐标文件与测量文件是同时存储在一个文件里,不需要再去建立一个坐标文件,而苏州一光的就要在坐标数据库里选择一个存储数据的坐标文件夹来专门来存储坐标文件。
参考资料来源:网络-全站仪
3. 如何学习数据库知识
好像武侠小说里边说的:“你的招式忘了没有?”,回答:“差不多忘了”,“忘了就好”。
这与数据库编程有什么关系?关系可大了。同志们学过Pascal、BASIC、C(C++)没有?如果没有,FOXBASE、FOXPRO应该学过吧?按以上这些语言编程,都是过程化的,说白一点就是一个数据一个数据、一条记录一条记录去处理(FOXBASE、FOXPRO不完全这样,但书上也经常是这样介绍的),当初我接触ACCESS
97时,一下子没有了IF、FOR这些语句(指数据处理),都用SQL语句,真是找不到北了,好在我学SQL语言时,也尽量忘掉这个IF、FOR,到我忘得差不多时,功夫也进了一大步,原来要编一大段程序,现在一两条SQL语句搞定,就算用多几条SQL语句,由于是在图形界面下做,可视化操作,拉拉扯扯,再修改一下生成的SQL语句,也就省事多了。
由于ACCESS具备完整的SQL语言(FOXBASE没有、FOXPRO不完整),我从ACCESS
97开始用ACCESS编程,到现在为止,DAO、ADO很少用,加上最近从爱赛思上接触的一些技术,基本上不用DAO、ADO都可以了,可以从我的“未完工的库存管理”中看出,只是在特殊情况下才偶尔用一下。(少用,但不是不用,还得学,不要误解)
如何学好数据库编程?下面介绍一下本人的一些经验,仅供参考:
1.首先要把原来一个数据一个数据、一条记录一条记录的数据处理方式忘掉,越彻底越好。
现在用成批处理了。少用记录集一条记录一条记录地处理,尽量用SQL语句。
2.学好关系数据库的理论,尤其是规范化理论,表的设计一定要规范化,最起码要规范化到第三范式。集合运算(并、交、差)。关系运算(选择、投影、连接)。其中连接与规范化是紧密结合的。
3.运用面向对象的技术:面向对象的分析OOA、面向对象的设计OOD、面向对象的编程OOP,根据表的关系,用窗体和子窗体、报表和子报表,仿真面向对象,这样可以增加程序的可读性和可维护性。(这是高级技术,同志们不要轻视,做大项目你就知道有用了)
4.用查询时,通常一步做不出来,可以分几步做,本人通常是这么做的,从我给网友回复的例子中也可以看得出。为什么要这样做?(1)有些是SQL语言的限制,没办法一步做出来,逼的;(2)可以检查每一步查询的结果,容易调试;(3)增加可读性,便于日后维护。
5.查询的结果用窗体显示或用报表打印,两者的技术差不多。通常改变打开窗体或报表的条件就可控制显示或打印的记录范围。另外用查询做数据源时,动态改变查询中的SQL语句,比在查询中引用窗体的控件要方便,因为SQL语句生成是在VBA中,可以先存放在字符变量中,然后再更新查询的SQL语句,这样就可以用断点来检查变量值对不对,如果在查询中引用窗体的控件,尤其是包含IIF()函数时,调试是很困难的。
6.开发一个系统,首先要解决技术问题,即算法,用简单例子,把算法弄懂了,再详细设计,这一点从网友的提问中可以看出,有很多人问题表达不清楚,有的人其中夹了很多与算法无关的东西,尤其是很专业的东西,别人不容易看得明白,由于算法没搞清楚,程序就无法编了。
7.不要使用过多的工具特性,使用过多的工具特性会使可读性降低,可维护性差,要别人帮忙时难以得到帮助,更要命的是可移植性差,从MDB到ADP就可以体会到了,所以在编程时可读性很重要,可移植性更重要,你甘心自己的程序就固定在一个环境下运行吗?你甘心永远用一个工具搞开发吗?为了你的“钱途”,不要玩弄太多的技巧,当然技术研究是另外一码事。
4. 常用的数据库有哪些
1. IBM 的DB2
作为关系数据库领域的开拓者和领航人,IBM在1997年完成了System R系统的原型,1980年开始提供集成的数据库服务器—— System/38,随后是SQL/DSforVSE和VM,其初始版本与SystemR研究原型密切相关。DB2 forMVSV1 在1983年推出。该版本的目标是提供这一新方案所承诺的简单性,数据不相关性和用户生产率。1988年DB2 for MVS 提供了强大的在线事务处理(OLTP)支持,1989 年和1993 年分别以远程工作单元和分布式工作单元实现了分布式数据库支持。最近推出的DB2 Universal Database 6.1则是通用数据库的典范,是第一个具备网上功能的多媒体关系数据库管理系统,支持包括Linux在内的一系列平台。
2. Oracle
Oracle 前身叫SDL,由Larry Ellison 和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979 年,Oracle公司引入了第一个商用SQL 关系数据库管理系统。Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的操作系统平台。目前Oracle关系数据库产品的市场占有率名列前茅。
3. Informix
Informix在1980年成立,目的是为Unix等开放操作系统提供专业的关系型数据库产品。公司的名称Informix便是取自Information 和Unix的结合。Informix第一个真正支持SQL语言的关系数据库产品是Informix SE(StandardEngine)。InformixSE是在当时的微机Unix环境下主要的数据库产品。它也是第一个被移植到Linux上的商业数据库产品。
4. Sybase
Sybase公司成立于1984年,公司名称“Sybase”取自“system”和 “database” 相结合的含义。Sybase公司的创始人之一Bob Epstein 是Ingres 大学版(与System/R同时期的关系数据库模型产品)的主要设计人员。公司的第一个关系数据库产品是1987年5月推出的SybaseSQLServer1.0。Sybase首先提出Client/Server 数据库体系结构的思想,并率先在Sybase SQLServer 中实现。
5. SQL Server
1987 年,微软和 IBM合作开发完成OS/2,IBM 在其销售的OS/2 ExtendedEdition 系统中绑定了OS/2Database Manager,而微软产品线中尚缺少数据库产品。为此,微软将目光投向Sybase,同Sybase 签订了合作协议,使用Sybase的技术开发基于OS/2平台的关系型数据库。1989年,微软发布了SQL Server 1.0 版。
6.PostgreSQL
PostgreSQL 是一种特性非常齐全的自由软件的对象——关系性数据库管理系统(ORDBMS),它的很多特性是当今许多商业数据库的前身。PostgreSQL最早开始于BSD的Ingres项目。PostgreSQL 的特性覆盖了SQL-2/SQL-92和SQL-3。首先,它包括了可以说是目前世界上最丰富的数据类型的支持;其次,目前PostgreSQL 是唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统.
7.mySQL
mySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL的官方网站的网址是: www.mysql.com
5. 走数据库方向 要学什么知识。
第一步,初级:看一本数据库原理方面的书,学一种数据库管理系统,如sql server,oracle等都可以。 第二步,中级:学一门编程语言,看看数据库在实践中是怎么被使用的。看一本国外的数据库原理与实现方面的教材,如北大杨冬青老师翻译的那本就不错! 第三步,高级:学离散数学,人工智能,学习数据挖掘和统计,慢慢往数据仓库和数据挖掘上转!