本书采用关系数据库(SQL Server 2016)和非关系数据库(MongoDB)对照阐述,介绍各自的优势。采用数据库基本理论与实践相结合的原则,在注重理论性、系统性、科学性的同时,兼顾培养学生的自主创新学习能力。为此,本书通过目前*流行的数据库管理系统SQL Server 2016和MongoDB的学习掌握数据库技术的基本原理,并使用目前比较流行的高级程序设计语言Java开发具体的应用系统。
內容簡介:
本书采用关系数据库(SQL Server 2016)和非关系数据库(MongoDB)对照阐述,介绍各自的优势。采用数据库基本理论与实践相结合的原则,在注重理论性、系统性、科学性的同时,兼顾培养学生的自主创新学习能力。为此,本书通过目前*流行的数据库管理系统SQL Server 2016和MongoDB的学习掌握数据库技术的基本原理,并使用目前比较流行的高级程序设计语言Java开发具体的应用系统。
前言
数据库技术是研究数据库的结构、存储、设计、管理和使用的一门学科,已广泛应用到工农业生产、商业、行政管理、科学研究、教育、工程技术和国防军事等各行各业,而且已围绕数据库技术形成了一个巨大的软件产业,即数据库管理系统和各类工具软件的开发与经营。数据库的建设规模、应用深度已成为衡量一个国家信息化程度的重要标志,数据资源和数据库高新技术已经成为世界各国极为重要的优先发展战略。在市场需求的驱动下,数据库技术及应用已成为当前高等院校计算机专业的必修课程、非计算机专业选修的核心课程之一。
在云计算和大数据时代,传统的关系数据库不再是一枝独秀,各种NoSQL数据库也不断涌现。过去常说的信息爆炸海量数据等已经不足以描述这个新事物,于是出现了大数据和数据科学,并成为一个热门的研究领域。未来越来越多的IT基础架构将会部署在公有云、私有云或者混合云上,而数据库作为架构中最重要的部分,与云的结合将变得越来越重要。SQL Server 2016支持云环境,打通了公有云和私有云的界限。提出NoSQL技术的目的并不是替代关系数据库技术,而是对其提供一种补充方案。NoSQL数据库只应用在特定领域,基本上不进行复杂的处理,但它恰恰弥补了关系数据库的不足之处。因此,二者之间不存在对立或替代关系,而是互补关系。结构化数据仍然使用传统的关系数据库处理,而半结构化数据和非结构化数据采用NoSQL存储和处理。
数据库知识网站DBEngines(https:dbengines.comenranking)根据搜索结果对357个数据库系统进行流行度排名,在2019年11月的流行度排行榜中,SQL Server排名第三,MongoDB排名第五,但MongoDB在NoSQL数据库中排名第一。因此,本书用通俗的语言将抽象的数据库理论具体化,结合目前最流行的关系数据库管理系统SQL Server 2016和NoSQL数据库MongoDB讲述数据库的基本理论与应用。
本书共分10章来进行论述。第1章为数据库基础知识,从数据管理技术发展的5个阶段引出数据库的概念,围绕数据库系统的组成介绍有关名词术语,最后介绍数据库系统的三级模式结构和二级映像功能。第2章介绍数据库系统的核心和基础数据模型。第3章对SQL Server 2016系统进行概述,以使读者对该系统有整体的认识和了解。第4章介绍关系数据库标准语言SQL,内容包括SQL语言的三级模式结构、数据定义语言、数据操纵语言、数据查询语言、数据控制语言和外模式视图。第5章介绍TransactSQL程序设计进阶,内容包括批处理、脚本、流程控制语句,以及存储过程和触发器等高级议题。第6章介绍关系数据库规范化理论。第7章介绍MongoDB数据库基础。第8章介绍数据库的安全和维护。第9章主要介绍数据库设计的任务和特点、设计方法及设计步骤。第10章以开发一个学生管理信息系统为例,介绍使用Java语言进行SQL Server 2016和MongoDB数据库系统的开发方法。
本书的主要特色如下:
(1) 采用数据库基本理论与实际应用相结合的原则,在注重理论性、系统性、科学性的同时,兼顾培养读者的自主创新学习能力。为此,本书通过目前最流行的数据库管理系统SQL Server 2016和MongoDB的学习,掌握数据库技术的基本原理,并使用目前比较流行的高级程序设计语言Java开发具体的应用系统,旨在培养读者的综合实践与创新能力。
(2) 将关系数据库和非关系型数据库结合起来进行介绍。本书用通俗的语言将抽象的数据库理论具体化,结合目前最流行的数据库管理系统SQL Server 2016和MongoDB对照讲述数据库的基本理论与应用。通过数据分析、处理及解决问题的学习和训练,掌握数据库有关基本知识、基本技术及应用,提高运用数据库技术解决实际应用问题的知识、素质和能力,为以后的学习和工作奠定重要基础。
(3) 内容有所取舍,配有丰富的数据库实验项目和大量的示例。通过课堂教学与上机实践相结合的学习方式,使读者系统地掌握数据库的基本原理和技术,掌握数据库设计方法和步骤,具有设计数据库模式以及开发数据库应用系统的基本能力。每章给出基本原理、最新的技术、应用和发展。注: 本书提供教学大纲、教学课件、电子教案、程序源码和教学进度表,扫描封底的课件二维码可以下载。
本书可作为高等学校计算机相关专业高年级本科生和专科生的教材,也可作为相关技术人员的参考用书。
在本书的编写过程中,参考了大量数据库相关的技术资料,在此向资料的作者表示感谢。书中的全部TransactSQL语句、MongoDB shell命令和Java程序都上机调试通过。由于编者水平和时间有限,书中不妥之处在所难免,恳请同行专家和广大读者批评指正。
在本书的编写过程中,得到了北京科技大学的相关领导、同事、朋友以及家人的大力支持与帮助,在此一并表示诚挚的感谢!本书的编写得到了十三五期间高等学校本科教学质量与教学改革工程建设项目和北京科技大学教材建设经费资助,特此致谢!同时,感谢清华大学出版社魏江江分社长和王冰飞编辑的支持与帮助。