第1章 数据库的基本概念 1
1.1数据库 1
1.1.1数据库系统 1
1.1.2数据模型 1
1.1.3关系型数据库语言 4
1.2数据库设计 4
1.2.1概念结构设计 4
1.2.2逻辑结构设计 6
1.2.3物理结构设计 7
1.3数据库应用系统 7
1.3.1 C/S模式应用系统 7
1.3.2 B/S模式应用系统 7
习题 8
第2章 数据库创建 10
2.1 SQL Server数据库 10
2.1.1逻辑数据库 10
2.1.2物理数据库 12
2.1.3系统数据库和用户数据库 13
2.1.4连接SQL Server服务器 13
2.2界面方式创建数据库 15
2.2.1数据库的创建 15
2.2.2数据库的修改和删除 17
2.3命令方式创建数据库 19
2.3.1创建数据库:CREATE DATABASE 20
2.3.2修改数据库:ALTER DATABASE 23
2.3.3删除数据库:DROP DATABASE 26
2.3.4数据库快照:AS SNAPSHOT 26
习题 27
第3章 表的创建和操作 29
3.1数据类型和表结构 29
3.1.1数据类型 29
3.1.2表结构设计 34
3.2界面方式创建表结构 36
3.2.1创建表结构 36
3.2.2修改表结构 36
3.2.3删除表 37
3.3命令方式创建表结构 38
3.3.1创建表结构:CREATE TABLE 38
3.3.2修改表结构:ALTER TABLE 40
3.3.3删除表:DROP TABLE 41
3.4界面方式操作表数据 42
3.4.1插入记录 42
3.4.2删除记录 43
3.4.3修改记录 43
3.5命令方式操作表数据 43
3.5.1插入记录:INSERT 43
3.5.2修改记录:UPDATE 45
3.5.3删除记录:DELETE/TRUNCATE TABLE 46
习题 47
第4章 数据库的查询、视图和游标 49
4.1数据库的查询:SELECT 49
4.1.1选择查询结果输出列:*/列表 49
4.1.2选择查询条件:WHERE 54
4.1.3指定查询对象:FROM 59
4.1.4连接:=/JOIN 60
4.1.5指定查询结果分组方法:GROUP BY 64
4.1.6指定查询结果分组后筛选条件:HAVING 65
4.1.7指定查询结果排序顺序:ORDER BY 66
4.1.8其他:INTO/UNION/EXCEPT/CTE 67
4.2视图 69
4.2.1视图概念 69
4.2.2创建视图:CREATE VIEW 70
4.2.3查询视图:SELECT 72
4.2.4更新视图:INSERT/UPDATE/DELETE 73
4.2.5修改视图的定义:ALTER VIEW 74
4.2.6删除视图:DROP VIEW 75
4.3游标 76
4.3.1声明游标:DECLARE CURSOR 76
4.3.2打开游标:OPEN 78
4.3.3读取数据:FETCH 79
4.3.4关闭删除游标:CLOSE/DEALLOCATE 81
习题 82
第5章 T-SQL语言 83
5.1 T -SQL语言 83
5.2常量、自定义数据类型与变量 84
5.2.1常量 84
5.2.2自定义数据类型 86
5.2.3变量:DECLARE/SET/SELECT 88
5.3运算符与表达式 91
5.4流程控制语句 96
5.4.1语句块:BEGIN…END 96
5.4.2条件语句:IF…ELSE 97
5.4.3多重分支:CASE 98
5.4.4无条件转移语句:GOTO 99
5.4.5循环语句:WHILE/BREAK/CONTINUE 99
5.4.6返回语句:RETURN 100
5.4.7等待语句:WAITFOR DELAY/TIME 100
5.4.8错误处理语句:TRY…CATCH 101
5.5系统内置函数 101
5.5.1系统内置函数介绍 101
5.5.2常用系统标量函数 102
5.6用户定义函数:CREATE/ALTER/ DROP FUNCTION 109
5.6.1标量函数:SELECT/EXEC 109
5.6.2内嵌表值函数:FROM表(…) 110
5.6.3用户定义函数的删除:DROP FUNCTION 113
习题 113
第6章 索引和完整性 115
6.1索引 115
6.1.1索引的分类 115
6.1.2索引的创建:CREATE INDEX 116
6.1.3重建索引:ALTER INDEX 119
6.1.4索引的删除:DROP INDEX 119
6.2数据完整性 120
6.2.1创建实体完整性:PRIMARY KEY/UNIQUE 121
6.2.2创建域完整性:CHECK/CREATE RULE 123
6.2.3创建参照完整性:FOREIGN KEY 127
习题 130
第7章 存储过程和触发器 132
7.1存储过程 132
7.1.1存储过程的类型 132
7.1.2存储过程的创建与执行:CREATE PROCEDURE 133
7.1.3存储过程的修改:ALTER PROCEDURE 137
7.1.4存储过程的删除:DROP PROCEDURE 138
7.1.5界面方式操作存储过程 139
7.2触发器 140
7.2.1触发器的类型 140
7.2.2触发器的创建:CREATE TRIGGER 140
7.2.3触发器的修改:ALTER TRIGGER 146
7.2.4触发器的删除:DROP TRIGGER 147
7.2.5界面方式操作触发器 147
习题 148
第8章 备份与恢复 149
8.1备份和恢复概述 149
8.1.1数据库备份概念 149
8.1.2数据库恢复概念 151
8.2数据库备份 152
8.2.1创建命名备份设备 152
8.2.2命令方式备份数据库:BACKUP DATABASE 153
8.2.3界面方式备份数据库 158
8.3数据库恢复 158
8.3.1检查点 159
8.3.2命令方式恢复数据库:RESTORE DATABASE 159
8.3.3界面方式恢复数据库 162
8.4附加数据库和数据库复制 163
8.4.1附加数据库 163
8.4.2数据库复制 163
习题 163
第9章 系统安全管理 165
9.1 SQL Server的安全机制 165
9.1.1 SQL Server身份验证模式 165
9.1.2 SQL Server安全性机制 165
9.1.3 SQL Server数据库安全验证过程 166
9.2建立和管理用户账户 166
9.2.1界面方式管理用户账户 167
9.2.2命令方式管理用户账户:CREATE LOGIN/USER 169
9.3角色管理 171
9.3.1固定服务器角色 172
9.3.2固定数据库角色 173
9.3.3自定义数据库角色:CREATE/DROP ROLE 174
9.3.4应用程序角色 176
9.4数据库权限的管理 177
9.4.1授予权限:GRANT 177
9.4.2拒绝权限 180
9.4.3撤销权限 181
9.5数据库架构的定义和使用 182
9.5.1界面方式创建架构 182
9.5.2命令方式创建架构:CREATE SCHEMA 183
习题 184
第10章 其他概念 186
10.1事务 186
10.1.1事务与ACID属性 186
10.1.2多用户使用问题 187
10.1.3事务处理:BEGIN/COMMIT/ROLLBACK/SAVE/ROLLBACK TRANSACTION 187
10.1.4事务隔离级:SET TRANSAC-TION ISOLATION LEVEL 190
10.2锁定 191
10.2.1锁定粒度 192
10.2.2锁定模式 192
10.3自动化管理 193
10.3.1 SQL Server代理 193
10.3.2操作员 194
10.3.3作业 194
10.3.4警报 194
10.3.5数据库邮件 195
10.3.6维护计划向导 195
习题 195
实验1 SQL Server 2016环境 196
实验2创建数据库和表 198
实验3表数据插入、修改和删除 202
实验4数据库的查询和视图 206
实验4.1数据库的查询 206
实验4.2视图的使用 211
实验5 T-SQL编程 214
实验6索引和数据完整性的使用 218
实验6.1索引 218
实验6.2数据完整性 219
实验7存储过程和触发器的使用 222
实验7.1存储过程 222
实验7.2触发器 224
实验8备份恢复与导入导出 227
实验8.1数据库的备份 227
实验8.2数据库的恢复 228
实验9数据库的安全性 230
实验9.1数据库用户的管理 230
实验9.2服务器角色的应用 231
实验9.3数据库权限管理 232
实习0创建实习数据库 234
实习0.1创建数据库及其对象 234
实习0.2应用系统功能和界面 239
实习1 PHP开发SQL Server综合实例 241
实习1.1 PHP开发入门 241
实习1.1.1 PHP项目的建立 241
实习1.1.2 PHP项目的运行 242
实习1.1.3 PHP连接SQL Server 2016. 244
实习1.2系统主页设计 245
实习1.2.1主界面 245
实习1.2.2功能导航 246
实习1.3学生管理 247
实习1.3.1界面设计 247
实习1.3.2功能实现 249
实习1.4成绩管理 251
实习1.4.1界面设计 251
实习1.4.2功能实现 253
实习2 Java EE开发SQL Server综合实例 256
实习2.1创建 Struts 2项目 256
实习2.1.1创建Java EE项目 256
实习2.1.2加载Struts 2包 257
实习2.1.3连接SQL Server 2016 259
实习2.2系统主页设计 260
实习2.2.1创建JSP环境 260
实习2.2.2功能导航 261
实习2.2.3部署项目 263
实习2.3学生管理 265
实习2.3.1界面设计 265
实习2.3.2功能实现 267
实习2.4成绩管理 271
实习2.4.1界面设计 271
实习2.4.2功能实现 273
实习3 ASP.NET开发SQL Server综合实例 276
实习3.1创建ASP.NET项目 276
实习3.1.1 ASP.NET项目的建立 276
实习3.1.2 ASP.NET 4连接SQL Server 2016 276
实习3.2 Ajax技术应用 277
实习3.2.1功能需求 277
实习3.2.2技术实现 277
实习3.3学生管理 282
实习3.3.1界面设计 282
实习3.3.2功能实现 284
实习3.4成绩管理 288
实习3.4.1界面设计 288
实习3.4.2功能实现 290
实习4 Visual C#开发SQL Server综合实例 296
实习4.1创建Visual C#项目 296
实习4.2系统主界面设计 296
实习4.2.1总体布局 296
实习4.2.2详细设计 297
实习4.3学生管理 299
实习4.3.1程序主体结构 299
实习4.3.2功能实现 300
实习4.4成绩管理 303
实习4.4.1姓名加载、成绩刷新 303
实习4.4.2功能实现 305
实习5 Python开发SQL Server综合实例 309
实习5.1学生管理 309
实习5.1.1界面设计 309
实习5.1.2功能实现 309
实习5.2成绩管理 311
实习5.2.1界面设计 311
实习5.2.2功能实现 312
实习6 VB 6.0开发SQL Server综合实例 314
实习6.1 VB数据库开发准备 314
实习6.1.1创建ODBC数据源 314
实习6.1.2新建VB 6.0项目 315
实习6.1.3连接数据库 316
实习6.2菜单系统与登录控制 316
实习6.2.1设计主菜单 316
实习6.2.2主窗口及版权声明 318
实习6.2.3登录功能 318
实习6.2.4菜单功能代码 319
实习6.3学生功能 320
实习6.3.1修改口令 320
实习6.3.2查询成绩 321
实习6.4教师功能 323
实习6.4.1增减学生 323
实习6.4.2输入成绩 324
附录 学生成绩(xscj)数据库表样本数据 327