轻松学SQL Server数据库
轻松学SQL Server数据库pdf
下载地址:网盘下载
第1章 数据库与SQL Server 2008 1
1.1 数据库基础 2
1.1.1 数据库的概念 2
1.1.2 数据库模型 2
1.2 什么是关系型数据库 2
1.2.1 关系型数据库的概念 3
1.2.2 一些常用术语 4
1.2.3 数据库管理系统的功能 4
1.2.4 关系模型完整性规则 5
1.3 实体关系(E-R)模型 5
1.3.1 实体模型 6
1.3.2 关系模型 6
1.4 数据库设计的三大范式 7
1.5 SQL Server 2008的体系结构 9
1.6 SQL Server 2008的新特性 11
1.6.1 日期数据类型 11
1.6.2 HierarchyId类型 12
1.6.3 增强XML功能 13
1.6.4 T-SQL语言增强 15
1.6.5 报表服务 16
1.6.6 集成服务 17
1.6.7 分析服务 17
1.6.8 Office集成特性 18
1.7 SQL Server 2008的安装和配置 18
1.7.1 安装SQL Server 2008 18
1.7.2 验证安装 21
1.7.3 注册服务器 22
1.7.4 配置服务器 23
1.8 实践案例:配置服务器的身份验证方式 24
1.9 动手练一练 26
1.9.1 练习题 26
1.9.2 上机实践 26
第2章 SQL Server 2008管理工具集 28
2.1 SQL Server Management Studio 29
2.1.1 SQL Server Management Studio简介 29
2.1.2 对象资源管理器 30
2.1.3 已注册的服务器 31
2.1.4 解决方案资源管理器 31
2.1.5 模板资源管理器 32
2.2 Business Intelligence Development Studio 33
2.3 Reporting Services配置 35
2.4 SQL Server配置管理器 35
2.4.1 管理服务 36
2.4.2 管理服务器和客户端网络协议 37
2.4.3 使用命名管道配置服务器别名 38
2.5 SQL Server Profiler 39
2.6 数据库引擎优化顾问 41
2.7 命令提示实用工具sqlcmd 43
2.7.1 使用sqlcmd连接到数据库 43
2.7.2 执行查询语句 44
2.7.3 使用输入和输出文件 44
2.8 实践案例:使用SQLSMS执行SQL查询文件 45
2.9 动手练一练 46
2.9.1 练习题 46
2.9.2 上机实践 47
第3章 SQL Server 2008管理数据库 48
3.1 SQL Server 2008中的数据库 49
3.1.1 系统数据库 49
3.1.2 数据库存储文件 50
3.1.3 数据库元素 51
3.2 使用SQL Server 2008创建数据库 52
3.3 操作SQL Server 2008数据库 55
3.3.1 修改数据库名称 55
3.3.2 扩大数据库文件 56
3.3.3 收缩数据库文件 57
3.3.4 添加辅助数据文件 58
3.3.5 查看数据库状态 58
3.4 使用SQL Server 2008删除数据库 59
3.5 实践案例:创建图书信息数据库 60
3.6 动手练一练 62
3.6.1 练习题 62
3.6.2 上机实践 63
第4章 SQL Server 2008管理数据表 64
4.1 SQL Server中的表 65
4.1.1 什么是表 65
4.1.2 系统表和临时表 66
4.2 创建表 66
4.2.1 使用图形界面创建表 66
4.2.2 数据类型 68
4.2.3 非空列 72
4.3 编辑表中的数据 73
4.3.1 添加数据 73
4.3.2 修改表数据 75
4.3.3 删除表记录 75
4.4 列属性 77
4.4.1 字段长度 77
4.4.2 默认值定义 78
4.4.3 自动编号 79
4.5 设计表 81
4.5.1 主键 82
4.5.2 表关系 83
4.5.3 索引和主 唯一键 85
4.5.4 全文索引 85
4.5.5 XML索引 86
4.5.6 检查约束 86
4.6 表的关系图 87
4.7 修改数据表 89
4.7.1 重命名表 89
4.7.2 添加 删除列 89
4.8 删除表 90
4.9 实践案例:创建一个学生信息表 91
4.10 动手练一练 92
4.10.1 练习题 92
4.10.2 上机实践 93
第5章 T-SQL语言基础 94
5.1 T-SQL语言概述 95
5.1.1 什么是T-SQL 95
5.1.2 T-SQL语法规范 95
5.1.3 注释 96
5.2 常量和变量 97
5.2.1 常量 97
5.2.2 变量 98
5.3 运算符 100
5.3.1 算术运算符 100
5.3.2 比较运算符 101
5.3.3 赋值运算符 102
5.3.4 位运算符 102
5.3.5 逻辑运算符 103
5.3.6 字符串连接运算符 104
5.3.7 一元运算符 104
5.3.8 运算符优先级 105
5.4 函数 106
5.4.1 聚合函数 106
5.4.2 数学函数 107
5.4.3 字符串函数 108
5.4.4 数据类型转换函数 109
5.4.5 日期和时间函数 110
5.4.6 文本和图像函数 111
5.4.7 用户自定义函数 111
5.5 控制语句 113
5.5.1 BEGIN…END语句 113
5.5.2 IF…ELSE条件语句 114
5.5.3 CASE分支语句 114
5.5.4 WHILE循环语句 116
5.5.5 TRY…CATCH错误处理语句 117
5.6 实践案例:使用WHILE循环输出一个倒三角形 118
5.7 动手练一练 119
5.7.1 练习题 119
5.7.2 上机实践 120
第6章 使用T-SQL操作数据库和表 121
6.1 数据库操作 122
6.1.1 创建数据库 122
6.1.2 指定多个数据库文件创建数据库 124
6.1.3 使用数据库 125
6.1.4 删除数据库 126
6.2 表操作 126
6.2.1 创建表 126
6.2.2 维护表 132
6.2.3 删除表 132
6.3 查询数据 133
6.4 插入数据 133
6.4.1 简单的数据插入 134
6.4.2 将一个表中的数据插入到另一个表中 135
6.5 更新数据 136
6.5.1 根据表中数据更新行 136
6.5.2 使用TOP表达式指定更新行 138
6.6 删除数据 138
6.6.1 使用DELETE语句删除数据 139
6.6.2 使用TRUNCATE TABLE语句 140
6.7 实践案例:创建借阅信息表 140
6.8 动手练一练 141
6.8.1 练习题 141
6.8.2 上机实践 142
第7章 使用T-SQL查询数据 143
7.1 基本查询 144
7.1.1 SELECT语句 144
7.1.2 查询指定列 144
7.1.3 为查询结果中的列添加别名 145
7.2 条件查询 146
7.2.1 比较条件 146
7.2.2 范围条件 147
7.2.3 逻辑条件 148
7.2.4 字符匹配符 148
7.2.5 列表运算符 150
7.2.6 未知值 150
7.3 排序查询 151
7.4 分组查询 152
7.5 筛选查询 153
7.6 实践案例:统计不同性别的人数、平均年龄和年龄总和 154
7.7 动手练一练 154
7.7.1 练习题 154
7.7.2 上机实践 155
第8章 高级查询 156
8.1 子查询 157
8.1.1 IN关键字子查询 157
8.1.2 EXISTS关键字子查询 157
8.1.3 比较运算符 158
8.1.4 单值子查询 159
8.2 多表查询 160
8.2.1 内连接 160
8.2.2 外连接 162
8.2.3 交叉连接 164
8.2.4 自连接 165
8.2.5 联合查询 166
8.2.6 交查询 167
8.2.7 差查询 168
8.3 XML查询 168
8.3.1 XML数据类型 168
8.3.2 XQuery查询 169
8.3.3 使用FOR XML RAW模式 171
8.3.4 使用FOR XML AUTO模式 172
8.3.5 使用FOR XML EXPLICIT模式 172
8.3.6 XML索引 173
8.3.7 OPENXML函数 174
8.4 实践案例:统计每一个客房类型所包含的房间数量 176
8.5 动手练一练 177
8.5.1 练习题 177
8.5.2 上机实践 178
第9章 视图和索引 179
9.1 视图 180
9.1.1 创建视图 180
9.1.2 更新视图 185
9.1.3 查看视图 188
9.1.4 修改视图 189
9.1.5 删除视图 190
9.2 索引 191
9.2.1 索引概述 191
9.2.2 选择索引类型 191
9.2.3 确定索引列 193
9.2.4 创建索引 193
9.2.5 查看索引属性 197
9.2.6 修改索引 198
9.2.7 删除索引 200
9.3 实践案例:创建图书基本信息视图 200
9.4 动手练一练 202
9.4.1 练习题 202
9.4.2 上机实践 203
第10章 存储过程 205
10.1 存储过程简介 206
10.1.1 系统存储过程 206
10.1.2 用户自定义存储过程 207
10.1.3 扩展存储过程 208
10.1.4 使用存储过程 208
10.2 创建自定义存储过程 211
10.2.1 创建存储过程需要遵循的规则 211
10.2.2 创建简单存储过程 212
10.2.3 使用模板创建存储过程 213
10.2.4 创建加密存储过程 214
10.2.5 创建临时存储过程 215
10.2.6 创建嵌套存储过程 216
10.3 为存储过程指定参数 217
10.3.1 创建带参数的存储过程 218
10.3.2 输入参数 219
10.3.3 为参数指定默认值 220
10.3.4 指定输出参数 221
10.4 管理存储过程 223
10.4.1 查看存储过程 223
10.4.2 修改存储过程 225
10.4.3 删除存储过程 227
10.5 实践案例:创建查询借书记录的存储过程 227
10.6 动手练一练 228
10.6.1 练习题 228
10.6.2 上机实践 229
第11章 触发器 230
11.1 触发器简介 231
11.1.1 触发器概述 231
11.1.2 触发器的类型 232
11.2 DML触发器 234
11.2.1 创建触发器语法 234
11.2.2 创建INSERT触发器 235
11.2.3 创建DELETE触发器 237
11.2.4 创建UPDATE触发器 238
11.3 DDL触发器 239
11.4 嵌套触发器 241
11.5 递归触发器 243
11.6 管理触发器 245
11.6.1 修改触发器 245
11.6.2 禁用触发器 246
11.6.3 启用触发器 247
11.6.4 删除触发器 247
11.7 实践案例:创建一个插入事件触发器 248
11.8 动手练一练 249
11.8.1 练习题 249
11.8.2 上机实践 250
第12章 高级特性 251
12.1 事务处理 252
12.2 数据锁 255
12.3 游标 256
12.3.1 定义游标 257
12.3.2 打开游标 257
12.3.3 检索游标 258
12.3.4 关闭游标 259
12.3.5 释放游标 260
12.4 架构 260
12.4.1 创建架构 261
12.4.2 修改架构 264
12.4.3 移动对象到新的架构 266
12.4.4 删除架构 268
12.5 实践案例:删除架构fwSchema 269
12.6 动手练一练 270
12.6.1 练习题 270
12.6.2 上机实践 271
第13章 SQL Server 2008的安全机制 272
13.1 安全机制简介 273
13.1.1 客户机安全机制 273
13.1.2 网络传输安全机制 273
13.1.3 实例级别安全机制 274
13.1.4 数据库级别安全机制 274
13.1.5 对象级别安全机制 274
13.2 身份验证模式 275
13.2.1 Windows身份验证模式 275
13.2.2 混合身份验证模式 276
13.2.3 配置身份验证模式 277
13.3 管理登录 278
13.3.1 创建Windows登录账户 278
13.3.2 创建SQL Server登录账户 282
13.3.3 管理登录账户 284
13.4 数据库用户 289
13.4.1 查看默认数据库用户 289
13.4.2 创建数据库用户 290
13.4.3 使用存储过程创建数据库用户 293
13.5 管理角色 293
13.5.1 服务器角色 293
13.5.2 数据库角色 295
13.5.3 用户自定义数据库角色 296
13.5.4 应用程序角色 299
13.5.5 将登录指派到角色 301
13.5.6 指派角色到多个登录 302
13.6 管理权限 303
13.6.1 权限概述 303
13.6.2 授予权限 304
13.6.3 撤销权限 305
13.6.4 拒绝权限 305
13.7 实践案例:创建管理用户信息的数据管理员 305
13.8 动手练一练 307
13.8.1 练习题 307
13.8.2 上机实践 307
第14章 维护SQL Server 2008数据库 309
14.1 备份数据库 310
14.1.1 备份类型 310
14.1.2 备份数据库 311
14.1.3 事务日志备份 314
14.2 恢复数据库 316
14.2.1 备份恢复模型 316
14.2.2 配置恢复模式 317
14.2.3 恢复数据库 317
14.3 分离数据库 321
14.4 附加数据库 322
14.5 收缩数据库 324
14.6 复制数据库 325
14.7 数据库快照 329
14.7.1 数据库快照概述 329
14.7.2 创建数据库快照 330
14.7.3 使用数据库快照 331
14.7.4 删除数据库快照 331
14.8 实践案例:备份系统数据库master 332
14.9 动手练一练 333
14.9.1 练习题 333
14.9.2 上机实践 334
第15章 模拟银行储蓄系统 335
15.1 需求分析 336
15.2 系统设计 336
15.3 创建数据库 337
15.4 创建数据表 338
15.5 模拟业务逻辑 340
15.5.1 开户 340
15.5.2 存款 343
15.5.3 取现 344
15.5.4 查询余额 345
15.5.5 转账 346
15.5.6 查询交易记录 347
15.5.7 挂失和激活 348
15.6 总结 349
练习题参考答案 350
轻松学SQL Server数据库的更多相关文章
- 关于SQL SERVER数据库学习总结
对于SQL SERFVER数据库也学了有一阵子了,自己也对自己所学做了一些总结. 我们首先学习数据库设计的一些知识点和用SQL语句建库. 设计数据库步骤:需求分析阶段,概要设计阶段,详细设计阶段, 建 ...
- SQL Server 数据库中关于死锁的分析
SQL Server数据库发生死锁时不会像Oracle那样自动生成一个跟踪文件.有时可以在[管理]->[当前活动] 里看到阻塞信息(有时SQL Server企业管理器会因为锁太多而没有响应). ...
- SQL Server数据库学习总结
经过一段时间的学习,也对数据库有了一些认识,数据库基本是由表,关系,操作组成:对于初学者首先要学的 一图胜“十”言:SQL Server 数据库总结 一个大概的总结 经过一段时间的学习,也对数 ...
- 转载 50种方法优化SQL Server数据库查询
原文地址 http://www.cnblogs.com/zhycyq/articles/2636748.html 50种方法优化SQL Server数据库查询 查询速度慢的原因很多,常见如下几种: 1 ...
- SQL Server学习之路(七):Python3操作SQL Server数据库
0.目录 1.前言 2.准备工作 3.简单测试语句 4.提交与回滚 5.封装成类的写法 1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话, ...
- Excel文件导入SQL Server数据库
Excel表格的使用可谓是非常广泛,博主也简单百度了一下Excel的发展. 发展历程: 1982年 Microsoft推出了它的第一款电子制表软件-Multiplan,并在CP/M系统上大 Excel ...
- .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库
今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...
- SQL Server数据库定时自动备份
SQL Server 数据库定时自动备份[转] 在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求 ...
- C#操作access和SQL server数据库代码实例
在C#的学习中,操作数据库是比较常用的技术,而access和sql server 数据库的操作却有着不同.那么,有哪些不同呢? 首先,需要引用不同的类.因为有着不同的数据引擎. access:usin ...
随机推荐
- 如何对hashmap按value值排序
http://bbs.csdn.net/topics/90321713 这个帖子中没有我想要的答案,treemap是根据key排序的,想以value排序,那么可以key,value互换一下,不过这样的 ...
- mock 测试 MVC
SpringMVC测试框架 基于RESTful风格的SpringMVC的测试,我们可以测试完整的Spring MVC流程,即从URL请求到控制器处理,再到视图渲染都可以测试. 一 MockMvcBui ...
- J2SE 8的输入输出--读取/写入文本文件和读取/写入二进制数据
读取/写入文本文件 // 1. 文本输入 // (1) 短小文本直接转入字符串 String string = new String(Files.readAllBytes(Paths.get(&quo ...
- 前端-CSS-4-伪类选择器&伪元素选择器
1.伪类选择器(爱恨原则) -------------------------------------------------------------------------------------- ...
- CAShapeLayer 画直线
// from StackOverflow CAShapeLayer *layer = [CAShapeLayer layer]; UIBezierPath *linePath = [UIBezier ...
- tensorflow笔记之softmax_cross_enropy
tf.nn.sparse_softmax_cross_entropy_with_logits() 当正确结果只有一个时,可以加速计算,比如MNIST数字识别,每张图片中仅包含一个数字,所以可以使用这个 ...
- PCA和SVD(转)
最近突然看到一个问题,PCA和SVD有什么关系?隐约记得自己照猫画虎实现的时候PCA的时候明明用到了SVD啊,但SVD(奇异值分解)和PCA的(特征值分解)貌似差得相当远,由此钻下去搜集了一些资料,把 ...
- c pointer
1. 定义数组后,数组名是一个常数, 而指针是一个变量 如下: int a[10]; int *p; p=a; \\ 与 p=&a[0]等价 则*p++表示 a[1] 而 a++ 则是错误的 ...
- SpringBoot整合Shiro (二)
Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码学和会话管理.相比较Spring Security,shiro有小巧.简单.易上手等的优点.所以很多框架都在使用sh ...
- 获取Activity中得到焦点的EditText
Android Activity中获取当前焦点的控件,自动化输入EditText 获取焦点的view对象 View view=getWindow().getDecorView().findFocus( ...