第1章SQL Server 2005数据库基础 1
1.1为什么要学习数据库 1
1.2数据库发展简史 1
1.3数据库的几个概念及关系 2
1.3.1数据库概念 2
1.3.2数据库管理系统 2
1.3.3数据库应用系统 2
1.3.4数据库系统 2
1.4如何描述数据库 2
1.4.1实体与记录 2
1.4.2数据库与数据库表 3
1.4.3数据冗余和数据完整性 4
1.5 SQL Server 2005 SQL Management Studio简介 5
1.6数据库的创建与管理 7
1.6.1创建服务器组 7
1.6.2创建服务器注册 8
1.6.3服务器启动、暂停和停止 9
1.6.4创建数据库 10
本章小结 16
习题 16
第2章 数据库表的建立与删除 18
2.1为什么要引入数据库表 18
2.2与表相关的概念 18
2.2.1主关键字、候选关键字和外键 18
2.2.2数据完整性 20
2.3建立和删除数据库表 22
2.3.1以界面方式建立数据库表 22
2.3.2以界面方式删除数据库表 29
2.3.3以T-SQL语句命令方式建立数据库表 31
2.3.4以SQL语句命令方式删除数据库表 36
本章小结 36
习题 37
第3章T-SQL语言简介 39
3.1为什么要学习T-SQL语言 39
3.1.1什么是SQL 39
3.1.2 T-SQL与SQL的区别 39
3.1.3 T-SQL组成 40
3.2数据类型 40
3.2.1整数 40
3.2.2精确小数 40
3.2.3货币数据 41
3.2.4近似数字 41
3.2.5日期时间数据 41
3.2.6字符串 42
3.2.7 Unicode字符串 42
3.2.8二进制数据 42
3.2.9其他数据类型 43
3.3 T-SQL中的常量、变量、批处理、注释和输出语句 43
3.3.1常量 43
3.3.2局部变量 44
3.3.3全局变量 47
3.3.4批处理、注释和输出语句 48
3.4 T-SQL中的运算符及优先级 49
3.4.1算术运算符 49
3.4.2赋值运算符(=) 49
3.4.3字符串连接运算符(+) 50
3.4.4比较运算符 51
3.4.5逻辑运算符 51
3.4.6 位运算符 51
3.4.7运算符优先级 52
3.4.8条件表达式 52
3.5T-SQL常用函数的使用 53
3.5.1数学函数 53
3.5.2日期和时间函数 54
3.5.3聚合函数 55
3.5.4字符串函数 56
3.5.5转换函数 57
3.5.6其他系统函数 59
本章小结 59
习题 60
第4章 数据库表的操作 62
4.1学习用T-SQL语句对数据库表进行操作的目的 62
4.2使用T-SQL语句对数据库表字段信息的修改 62
4.2.1创建数据库表 63
4.2.2增加列 64
4.2.3修改列 65
4.2.4删除列 66
4.2.5添加约束 67
4.2.6删除约束 70
4.2.7启用和暂停约束 71
4.3表中数据操作 71
4.3.1在表编辑器中添加、修改和删除数据 71
4.3.2使用T-SQL命令insert对表中数据进行插入操作 73
4.3.3使用T-SQL命令update对表中数据进行修改 76
4.3.4使用T-SQL命令delete对表中记录进行删除操作 78
本章小结 78
习题 78
第5章 查询 82
5.1引入查询的目的 82
5.2使用界面方式【查询设计器】查询 83
5.3 select语句 84
5.3.1简单查询 84
5.3.2选择表中的若干元组 87
5.3.3对查询结果排序 93
5.3.4使用函数查询 93
5.3.5使用聚合函数查询 95
5.3.6分组查询 95
5.3.7使用into子句定义新表 97
5.4连接查询 97
5.4.1内连接查询 98
5.4.2自连接查询 100
5.4.3外连接查询 101
5.4.4交叉连接查询 102
5.5子查询 104
5.5.1简单子查询 104
5.5.2带in和notin子查询 107
5.5.3带exists和notexists的子查询 108
5.5.4带有any或all谓词的子查询 109
5.5.5多重嵌套子查询 111
5.5.6相关子查询 112
5.6联合查询 113
本章小结 117
习题 118
第6章 视图与索引 121
6.1视图 121
6.1.1引入视图的目的 121
6.1.2使用视图设计器创建、改名和删除视图 122
6.1.3使用T-SQL命令创建视图和删除视图 124
6.1.4利用视图更新、插入和删除记录 129
6.2索引 133
6.2.1引入索引的目的 133
6.2.2索引的类型 134
6.2.3创建索引 135
6.2.4查看、修改和删除索引 138
本章小结 140
习题 141
第7章T-SQL高级编程 143
7.1学习T-SQL高级编程的目的 143
7.2流程控制语句 143
7.2.1 begin...end块语句 143
7.2.2 if...else语句 144
7.2.3 while循环语句 146
7.2.4 case多分支语句 148
7.2.5 goto、return语句 151
7.3用户自定义函数 152
7.3.1标量值型函数 153
7.3.2内嵌表值型函数 154
7.3.3多语句表值型函数 156
7.4游标的使用 158
7.4.1声明游标 159
7.4.2打开游标 160
7.4.3读取游标 160
7.4.4关闭和释放游标 161
7.4.5定位、更新和删除游标数据 164
本章小结 165
习题 166
第8章 存储过程 167
8.1引入存储过程的目的 167
8.2常用的系统存储过程 168
8.3存储过程的创建 170
8.3.1使用SQL Server的管理平台创建存储过程 170
8.3.2使用SQL Server的管理平台创建存储过程模板创建存储过程 170
8.3.3使用T-SQL语句创建存储过程 171
8.3.4删除存储过程 180
8.3.5存储过程中错误处理信息 181
本章小结 183
习题 183
第9章 事务 185
9.1引入事务的目的 185
9.2事务的基本概念 187
9.2.1什么是事务 187
9.2.2事务特性 187
9.2.3事务控制语句 187
9.3创建事务 188
本章小结 192
习题 193
第10章 触发器 195
10.1引入触发器的目的 195
10.2触发器的基本概念 197
10.2.1什么是触发器 197
10.2.2触发器的作用 198
10.2.3 inserted与deleted表的作用 198
10.2.4 instead of和after触发器 199
10.2.5触发器的执行过程 199
10.3创建触发器 199
10.3.1使用SQL Server管理平台创建触发器 199
10.3.2使用SQL Server管理平台实现表之间的级联操作 200
10.3.3使用T-SQL语句创建触发器 202
10.4删除触发器 213
10.4.1使用SQL Server管理平台的界面方式删除触发器 213
10.4.2使用T-SQL语句的命令方式删除触发器 213
本意小结 214
习题 214
第11章 数据库备份和权限管理 217
11.1数据库备份 217
11.1.1数据库备份的种类 217
11.1.2备份设备 217
11.1.3移动数据库 226
11.1.4导入和导出数据 229
11.2数据库权限管理 233
11.2.1安全身份验证 233
11.2.2创建登录账户 234
11.2.3用户账户管理 236
11.2.4权限管理 238
11.2.5角色管理 242
本章小结 245
习题 246
第12章 数据源的连接 247
12.1引入数据源连接的目的 247
12.2 VC#中数据源的连接 247
12.2.1 ADO.NET的对象模型 247
12.2.2使用ADO.NET访问数据库 248
12.3 JBuilder 2006中数据源的连接 250
12.3.1 JDBC驱动程序 250
12.3.2 JDBC程序的结构 250
本章小结 254
习题 254
第13章 数据库的设计与实现 255
13.1为什么要规范数据库设计 255
13.2数据库设计的步骤 256
13.2.1需求分析阶段的数据库设计 256
13.2.2绘制E-R图 257
13.2.3如何将E-R图转换为表 260
13.3数据规范化 263
13.3.1问题的提出 263
13.3.2规范设计要求 264
13.3.3规范化与数据冗余的关系 266
13.4数据库的实现 267
13.4.1创建数据库 267
13.4.2创建数据库表 267
13.4.3创建视图 269
13.4.4创建存储过程 269
13.4.5创建触发器 270
本章小结 271
习题 272
附录A实验内容 273
实验一 注册服务器与创建数据库 273
实验二 创建表 274
实验三 创建并执行T-SQL脚本 275
实验四(1)实现表中数据完整性 278
实验四(2)表结构的修改、删除 280
实验四(3)修改数据 281
实验五(1)查询数据库1 282
实验五(2)查询数据库2 285
实验五(3)查询数据库3 285
实验六 创建和使用视图与索引 286
实验七T-SQL高级编程 287
实验八 实现存储过程 289
实验九 管理事务 291
实验十 触发器 293
实验十一(1)数据源的连接1 296
实验十一(2)数据源的连接2 298
参考文献 301