GIS开发随笔(2)——关于建立GIS数据库的几个问题

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:
 真正的实战开始了,根据用户的需求首先就是编写了一大堆的这样那样的文档说明,并根据用户需求分析建立了数据库的库表及其内容。
      在建库的过程中我们使用的是微软的Sql Server2000数据库,在分析数据库前也在网上游荡了些时日,发现很多人都很支持Oracle数据库(我并没有使用过Oracle数据库,然而领导决定使用Sql Server2000数据库),听说当中有支持空间数据库的概念,可以将整个地图信息都放入数据库中,不知道大家对此有多少了解。而目前我们却是使用Sql Server2000的数据库的,建立了跟应用系统有关的表(如:权限控制方面的表、用户信息表等等)、通信设备有关的表(如:仪器信息表——其中包含仪器的上行和下行数据或命令的格式)、图层有关的表(如:基本图层表和专题图层表。此部分中的表要和图层一一对应,而且每个表中都有一个字段也是和相应图层中的表文件数据一一对应)和非图层的详细信息表(如:被管理者信息表和警告信息表等。主要是表示系统各个部分数据关系以及用到的系统参数设置的表),不知道这样见表有没有不对的地方?还望知道的人能给些回答。
      还有一个关于数据库的问题。在原来本人使用Sql Server2000来建立应用程序数据库时,总是希望能加上表和表之间的约束,这样能够使数据库中的数据保证数据完整性,然而最近却让我将这些约束从物理意义上去除,而逻辑意义上还是存在的,那就需要靠编程等方法来实现逻辑意义这些关系约束。比如一张表是部门,一张表是人员,人员是属于部门的,部门和人员是一对多的关系。过去我是在人员和部门两张表间添加一个外键约束;现在却要求我将这个外键去除,在部门中除了自己的主键“记录ID”外再加入一个唯一性的字段“部门编号”,在人员表中也加入同样的“部门编号”字段,而这两张表之间并没有实际的主外键约束,只有逻辑意义上的关系。不知道这样做和以前的做法哪一个更好些。我个人觉得虽然没有实际上的约束使得表更加灵活,独立性更强,但是还是添加主外键约束的更好些,用户在大部分情况下可能更希望数据的准确,所以保证数据库的完整性应该更好些,你们认为呢?
      最近数据库已经建立完成了,现在就是在用.Net来开发系统功能程序和公共类的方法。等到这些事情忙完了,相信就该把重点放到ArcIMS以及MapNet上了。

      不过空间数据库的建立也是我头一次建立这样的数据库,其中有什么观点不对的地方还请专业人士给出一些自己的见解和经验。     


本文转自刚刚博客园博客,原文链接:http://www.cnblogs.com/lijigang/archive/2007/01/18/621665.html,如需转载请自行联系原作者

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
12天前
|
SQL 数据库
数据库开发之子查询案例的详细解析
数据库开发之子查询案例的详细解析
12 0
|
12天前
|
SQL 数据库
数据库开发之子查询的详细解析
数据库开发之子查询的详细解析
18 0
|
12天前
|
SQL 存储 数据库
数据库开发表操作案例的详细解析
数据库开发表操作案例的详细解析
7 0
|
12天前
|
SQL 存储 关系型数据库
数据库开发之图形化工具以及表操作的详细解析
数据库开发之图形化工具以及表操作的详细解析
28 0
|
12天前
|
SQL 关系型数据库 MySQL
数据库开发之SQL简介以及DDL的详细解析
数据库开发之SQL简介以及DDL的详细解析
25 0
|
4月前
|
SQL 关系型数据库 MySQL
Python 数据库访问与ORM框架——打造高效开发利器
Python 作为一门广泛使用的编程语言,其在数据库访问方面也有着较为成熟的解决方案,其中ORM框架更是成为了开发者们的首选。本文将介绍 Python 中数据库访问和 ORM 框架的基本概念,以及如何使用 SQLAlchemy 这一优秀的 ORM 框架进行开发。
|
4月前
|
关系型数据库 API 数据库
Python数据库访问与ORM框架:加速开发、提升效率
在现代软件开发中,数据库是不可或缺的组成部分。本文介绍了Python中数据库访问的重要性,并探讨了ORM框架(例如SQLAlchemy)如何帮助程序员加速开发、提升效率。通过使用ORM框架,开发人员可以轻松地将Python对象映射到数据库表,并且可以通过简洁的API进行数据库操作。此外,本文还讨论了ORM框架在处理复杂查询、维护数据一致性和实现数据库迁移方面的优势。
|
12天前
|
SQL 存储 关系型数据库
数据库开发之mysql前言以及详细解析
数据库开发之mysql前言以及详细解析
18 0
|
4月前
|
缓存 数据库 索引
高效后端开发:数据库优化策略详解
数据库优化是后端开发中不可或缺的一部分。本文将从多个方面详细阐述数据库优化策略,包括数据表设计、索引优化、查询性能优化等。通过本文的学习,读者可以了解如何优化数据库,提升后端应用性能和稳定性。
|
4月前
|
前端开发 数据库 Python
使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
【1月更文挑战第13天】使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
95 7