《数据库基础及实践技术——SQL Server 2008》一导读

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介: 为了提高计算机专业本科生对数据库知识的实践能力,很多高校的计算机专业对数据库的授课做了一些调整,相当一部分学校将数据库的教学安排在两个学期完成,或者分为两个阶段来完成。第一个阶段基本是以讲授数据库基本原理为主,第二个阶段以讲授数据库实践技术为主,作者所在的学校也是如此。

b9a86bcc18879bc93fe65367edc16462f4f374e0

前  言

数据库技术起源于20世纪60年代末,经过几十年的迅速发展,目前已经建立起一套较完整的理论体系,产生了一大批商用软件产品。随着数据库技术应用领域的不断扩大,对数据库的应用已深入到国民经济和社会生活的各个方面。因此,作为当代的大学生,学习和掌握数据库知识都是非常必要的。

为了提高计算机专业本科生对数据库知识的实践能力,很多高校的计算机专业对数据库的授课做了一些调整,相当一部分学校将数据库的教学安排在两个学期完成,或者分为两个阶段来完成。第一个阶段基本是以讲授数据库基本原理为主,第二个阶段以讲授数据库实践技术为主,作者所在的学校也是如此。但在教材选择上,本人发现适合数据库基础理论教学的教材很多,但适合数据库实践教学的教材却比较少,鉴于此,本人结合自己多年数据库基础理论及数据库技术实践的教学经验和科研经验编写了本书,希望能对学生学习数据库实际的管理以及后台编程技术有所帮助。
本书是为学生学习数据库知识而编写的一本教材,其中选用Microsoft SQL Server 2008作为实践平台。SQL Server具有良好的用户操作界面,功能全面而强大,有很高的市场占有率和很好的发展前景,非常适合作为学生的数据库实践平台。
本书主要包括两大部分内容。一部分是数据库管理方面的知识,这部分知识涵盖在第2、3、5、8、12、13、14章中,主要包括安装和配置SQL Server 2008数据库管理系统、创建与维护数据库、创建与维护关系表、创建分区表、构建索引的技术、安全管理、数据传输、备份和恢复数据库。另一部分是数据库编程方面的知识,这部分知识涵盖在第4、6、7、9、10、11章中,主要包括SQL基础、基本数据操作语句、高级查询、视图、存储过程、触发器、函数以及游标等。触发器主要是为了增强数据的完整性和一致性;存储过程主要是为了提高数据的操作效率,方便客户端的编程;函数主要是为了能实现一些复杂的数据操作以及模块共享功能;使用游标可以实现对数据的逐行处理。为方便数据库初学者学习和掌握数据库实践技能,本书特意在第1章介绍了数据库中最常用的基础知识,初学者在掌握了第1章的知识后,便可学习后续章节内容。
本书内容涵盖了常用的数据库管理和编程技术,内容由浅入深,除包含一般数据库实践知识外,还全面介绍了数据库技术发展的新功能、新思想,这些新功能在SQL Server 2008中得到了全面的支持,包括查询结果的并、交、差运算,以及开窗函数、公用表表达式、筛选索引、包含列索引、分区表、索引视图(物化视图)等。
本书实例丰富、图文并茂,并紧密结合实际问题,从问题出发,循序渐进地给出解决思路和方法,使读者能更准确地理解知识并应用。
为方便读者学习和实践所学知识,也为了更好地讲解某些知识,本书为读者提供了示例数据库MySimpleDB,其数据是从SQL Server 2008提供的AdventureWorks数据库中选取的,有需要的读者可从华章网站(www.hzbook.com)上下载该数据库。为方便教师授课,本书为教师提供授课幻灯片、书中的编程代码以及习题答案,这些资料也可从华章网站上下载。
本书的出版得到了机械工业出版社华章公司领导和姚蕾的大力支持与帮助,他们给予我很多的鼓励和很好的建议,帮助我完成了本书的编写。梁琦、田英爱、谷葆春、张鸿斌等对本书部分章节及上机实践题目的编写提供了帮助,同时对本书提出了很多很好的建议和意见,是他们的积极参与和帮助,使本书得以顺利完成。
真诚地希望读者对本书提出自己宝贵的意见和建议,因为我知道在教学探索的道路上没有止境,没有最好,只有更好。

目  录

第1章 关系数据库基础
1.1 数据管理的发展
1.1.1 文件管理系统
1.1.2 数据库管理系统
1.2 数据库系统与数据库管理系统
1.2.1 数据库系统的组成
1.2.2 数据库管理系统的功能
1.3 数据和数据模型
1.3.1 数据和数据模型概述
1.3.2 数据模型三要素
1.3.3 概念层数据模型
1.3.4 组织层数据模型
1.3.5 E-R模型向关系模型的转换
1.4 数据库系统的结构
1.4.1 三级模式结构
1.4.2 两级模式映像功能与数据独立性
1.5 关系数据库规范化理论
1.5.1 函数依赖
1.5.2 关系规范化
1.6 数据库应用结构
1.6.1 集中式结构
1.6.2 文件服务器结构
1.6.3 客户端/服务器结构
1.6.4 互联网应用结构
小结
习题

第2章 SQL Server 2008基础
2.1 SQL Server 2008的版本和组件
2.1.1 SQL Server 2008的版本
2.1.2 SQL Server 2008的组件
2.1.3 SQL Server 2008各版本支持的功能
2.1.4 安装SQL Server 2008需要的软、硬件环境
2.1.5 实例
2.2 安装SQL Server 2008
2.3 配置SQL Server 2008
2.4 卸载SQL Server 2008
2.5 SQL Server Management Studio工具
2.5.1 连接到数据库服务器
2.5.2 查询编辑器
2.5.3 SSMS的常用选项
小结
习题
上机练习

第3章 数据库的创建与管理
3.1 SQL Server数据库概述
3.1.1 系统数据库
3.1.2 数据库的组成
3.1.3 数据库文件组
3.1.4 数据库文件的属性
3.2 创建数据库
3.2.1 用图形化方法创建数据库
3.2.2 用T-SQL语句创建数据库
3.3 查看和设置数据库选项
3.4 修改数据库
3.4.1 扩大数据库空间
3.4.2 收缩数据库空间
3.4.3 添加和删除数据库文件
3.4.4 创建和更改文件组
3.5 删除数据库
3.6 分离和附加数据库
3.6.1 分离数据库
3.6.2 附加数据库
3.7 复制数据库
小结
习题
上机练习

第4章 SQL基础
4.1 SQL概述
4.1.1 SQL的发展
4.1.2 SQL特点
4.1.3 SQL功能概述
4.2 系统提供的数据类型
4.2.1 数值数据类型
4.2.2 字符串类型
4.2.3 日期和时间数据类型
4.2.4 货币类型
4.3 用户定义数据类型
4.3.1 创建用户定义数据类型
4.3.2 删除用户定义数据类型
4.4 T-SQL基础知识
4.4.1 语句批
4.4.2 脚本
4.4.3 注释
4.5 变量
4.5.1 变量的种类
4.5.2 变量的声明与赋值
4.6 流程控制语句
小结
习题
上机练习

相关实践学习
使用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
相关文章
|
2天前
|
SQL Oracle 关系型数据库
sql语句创建数据库
在创建数据库之前,请确保你有足够的权限,并且已经考虑了数据库的安全性和性能需求。此外,不同的DBMS可能有特定的最佳实践和配置要求,因此建议查阅相关DBMS的官方文档以获取更详细和准确的信息。
|
1天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
|
1天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
ava从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
|
2天前
|
SQL 关系型数据库 MySQL
:“You have an error in your SQL syntax; check the manual that corresponds to your MySQL server versi
:“You have an error in your SQL syntax; check the manual that corresponds to your MySQL server versi
8 0
|
2天前
|
SQL 缓存 数据库
sql 数据库优化
SQL数据库优化是一个复杂且关键的过程,涉及多个层面的技术和策略。以下是一些主要的优化建议: 查询语句优化: 避免全表扫描:在查询时,尽量使用索引来减少全表扫描,提高查询速度。 使用合适的子查询方式:子查询可能降低查询效率,但可以通过优化子查询的结构或使用连接(JOIN)替代子查询来提高性能。 简化查询语句:避免不必要的复杂查询,尽量使SQL语句简单明了。 使用EXISTS替代IN:在查询数据是否存在时,使用EXISTS通常比IN更快。 索引优化: 建立合适的索引:对于经常查询的列,如主键和外键,应创建相应的索引。同时,考虑使用覆盖索引来进一步提高性能。 避免过多的索引:虽然索引可以提高查询
|
3天前
|
SQL XML 数据库
sql导入数据库命令
在SQL Server中,数据库导入可通过多种方式实现:1) 使用SSMS的“导入数据”向导从各种源(如Excel、CSV)导入;2) BULK INSERT语句适用于导入文本文件;3) bcp命令行工具进行批量数据交换;4) OPENROWSET函数直接从外部数据源(如Excel)插入数据。在操作前,请记得备份数据库,并可能需对数据进行预处理以符合SQL Server要求。注意不同方法可能依版本和配置而异。
|
6天前
|
SQL 自然语言处理 数据库
NL2SQL实践系列(2):2024最新模型实战效果(Chat2DB-GLM、书生·浦语2、InternLM2-SQL等)以及工业级案例教学
NL2SQL实践系列(2):2024最新模型实战效果(Chat2DB-GLM、书生·浦语2、InternLM2-SQL等)以及工业级案例教学
NL2SQL实践系列(2):2024最新模型实战效果(Chat2DB-GLM、书生·浦语2、InternLM2-SQL等)以及工业级案例教学
|
9天前
|
存储 SQL 安全
6.数据库技术基础
6.数据库技术基础
|
9天前
|
SQL 安全 网络安全
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
19 0
|
9天前
|
SQL 自然语言处理 测试技术
NL2SQL进阶系列(4):ConvAI、DIN-SQL等16个业界开源应用实践详解[Text2SQL]
NL2SQL进阶系列(4):ConvAI、DIN-SQL等16个业界开源应用实践详解[Text2SQL]
NL2SQL进阶系列(4):ConvAI、DIN-SQL等16个业界开源应用实践详解[Text2SQL]

热门文章

最新文章