目 录 1
第一周一瞥 1
第一天介绍SQL 3
数据库的简要历史 4
设计数据库结构 8
今日数据库风景线 8
SQL概述 10
本书中包含的例子 11
在应用编程中使用SQL 13
问题与解答 14
总结 14
讨论会 15
小测验 15
练习 15
第二天介绍查询 17
目标 18
背景 18
一般的语法规则 18
检索大量数据:SELECT和FROM 19
样本数据库 20
怎样知道结束:结束符 21
改变列的顺序 21
你的第一个查询 21
选择个别列 22
选择另一张表 23
结果不重复的查询 24
总结 25
问题与解答 25
讨论会 26
小测验 26
练习 26
第三天表达式、条件和操作符 27
条件 28
表达式 28
目标 28
WHERE子句 29
操作符 30
算术操作符 30
比较操作符 39
字符操作符 45
逻辑操作符 49
集合操作符 52
其它操作符,IN和BETWEEN 55
总结 57
问题与解答 57
练习 58
讨论会 58
小测验 58
第四天函数 59
目标 60
聚集函数 60
COUNT 61
SUM 62
AVG 63
MAX 64
MIN 64
VARIANCE(方差) 65
STDDEV(标准差) 66
日期和时间函数 67
ADD_MONTHS 67
LAST_DAY 68
MONTHS_BETWEEN 70
NEW_TIME 71
NEXT_DAY 72
SYSDATE 72
算术函数 73
ABS 73
CEIL和FLOOR 74
COS,COSH,SIN,SINH,TAN和TANH 75
EXP 77
LN和LOG 77
MOD 78
POWER 79
SIGN 79
SQRT 80
字符函数 81
CHR 81
CONCAT 82
INITCAP 82
LOWER和UPPER 83
LPAD和RPAD 84
LTRIM和RTRIM 85
REPLACE 86
SUBSTR 87
TRANSLATE 89
INSTR 89
LENGTH 90
转换函数 90
TO_CHAR 91
TO_NUMBER 91
USER 92
其它函数 92
GREATEST和LEAST 92
总结 93
问题与解答 93
讨论会 93
小测验 93
练习 93
第五天子句 95
简介 96
WHERE子句 97
STARTING WITH子句 98
从混沌到有序:ORDER BY子句 100
GROUP BY子句 105
HAVING子句 110
子句的组合 114
总结 119
问题与解答 119
讨论会 119
小测验 120
练习 120
第六天连接 121
简介 122
目标 122
找到正确的列 127
等值连接 127
非等值连接 131
外连接 132
将一个表连接到它本身 134
总结 136
问题与解答 136
讨论会 137
小测验 137
练习 137
第七天子查询 139
简介 140
建立一个子查询 140
在子查询中使用聚集函数 144
嵌套子查询 146
相关子查询 149
使用EXISTS、ANY和ALL 153
总结 157
问题与解答 157
讨论会 157
小测验 158
练习 158
第一周复习 159
第二周一瞥 161
第八天数据操纵 163
简介数据操纵语句 164
INSERT语句 164
INSERT...VALUES语句 164
INSERT...SELECT语句 168
UPDATE语句 169
DELETE语句 172
Microsoft Access 176
从(局)外部数据源转入(转出)数据 176
Microsoft and Sybase SQLServer 177
Personal Oracle7 178
总结 178
问题与解答 179
讨论会 179
小测验 179
练习 179
第九天创建和操纵表 181
简介 182
CREATE DATABASE语句 182
数据库设计 183
CREATE DATABASE选项 183
创建数据字典 184
创建关键字段 185
CREATETABLE语句 187
表名 187
字段名 187
字段的数据类型 188
用已经存在的表建表 191
ALTER TABLE语句 191
DROP DATABASE语句 193
总结 193
DROPTABLE语句 193
问题与解答 194
讨论会 195
小测验 195
练习 195
第十天创建视图和索引 197
简介 198
使用视图 198
一个简单的视图 200
重命名列 202
SQL对视图的处理 202
用视图修改数据 207
使用SELECT的限制 207
用视图修改数据的问题 209
视图的一般应用 209
视图和安全性 209
使用视图转化单位 210
使用视图将复杂的查询简单化 211
DROP VIEW语句 212
使用索引 212
什么是索引? 212
索引小知识 216
在多个字段上建立索引 217
在CREATE INDEX语句中使用UNIQUE关键字 218
索引和连接 220
使用簇 221
总结 222
问题与解答 223
讨论会 223
小测验 223
练习 223
第十一天事务控制 225
简介 226
事务控制 226
开始一个事务 228
结束一个事务 230
撤消一个事务 232
使用事务的保存点(savingpoint) 235
总结 238
讨论会 239
小测验 239
第十二天数据库的安全性 241
简介 242
当务之急的需要:数据库管理员 242
流行的数据库产品及其安全性 242
一个数据库怎样才能成为安全的? 243
Personal Oracle7及其安全性 244
为安全性的目的而使用视图 252
总结 256
讨论会 257
小测验 257
练习 257
第十三天嵌入式SQL 259
简介 260
究竟什么是嵌入式SQL? 260
静态和动态SQL 260
用SQL编程 262
对ANSI SQL的扩展 263
BASEBALL数据库 263
声明局部变量(Local Variables) 265
声明全局变量(G1obal Variables) 266
使用变量 267
PRINT命令 268
BEGIN和END语句 269
IF...ELSE语句 269
测试查询的结果 271
WHILE循环 272
总结 275
问题与解答 275
讨论会 275
小测验 276
练习 276
第十四天高级SQL课题 277
简介 278
临时表 278
游标 283
创建游标 283
卷动游标 284
打开游标 284
测试游标的状态 285
关闭游标 286
游标的范围 287
创建和使用存储过程 288
使用存储过程的参数 290
删除一个存储过程 291
嵌套存储过程 292
设计和使用触发器 293
触发器和事务 295
整理数据库和SQL查询 296
嵌套触发器 296
使用触发器的限制 296
整理数据库 297
整理SQL查询 297
总结 298
讨论会 298
小测验 298
练习 299
第十五天SQL的实际使用 301
简介 302
快速浏览 302
ODBC 302
ISQL 303
Personal Oracle7 303
Visual C++ 304
Delphi 304
设置 304
创建数据库 305
使用MICROSOFT QUERY执行连接 310
使用VISUAL C++和SQL 313
使用DELPHI和SQL 319
练习 325
小测验 325
讨论会 325
问题与解答 325
总结 325
第二周复习 327
附录A常用的SQL语句 329
ALTER DATABASE 330
ALTER USER 330
BEGIN TRANSACTION 330
CLOSE CURSOR 330
COMMIT TRANSACTION 330
CREATE DATABASE 330
CREATE TRIGGER 331
CREATE TABLE 331
CREATE INDEX 331
CREATE PROCEDURE 331
CREATE USER 332
CREATE VIEW 332
DEALLOCATE CURSOR 332
DECLARE CURSOR 332
DROP DATABASE 332
EXECUTE 333
DROP VIEW 333
DROP TRIGGER 333
DROP TABLE 333
DROP PROCEDURE 333
DROP INDEX 333
FETCH 334
FROM 334
GRANT 334
GROUP BY 334
HAVING 334
SELECT 335
ROLLBACK TRANSACTION 335
REVOKE 335
INTERSECT 335
ORDER BY 335
UNION 336
WHERE 336
附录B第十五天使用的C++程序的源代码 337
附录C第十五天使用的Delphi程序的源代码 353
附录D参考资料 357
附录E ASCII表 361
附录F答案 367
小测验答案 368
练习答案 368
第一天 368
第二天 368
小测验答案 368
第三天 369
小测验答案 369
练习答案 369
第四天 369
小测验答案 369
小测验答案 370
练习答案 370
练习答案 370
第五天 370
第六天 371
小测验答案 371
练习答案 371
第七天 372
小测验答案 372
练习 372
第八天 373
小测验答案 373
第九天 374
小测验答案 374
第十一天 375
小测验答案 375
第十天 375
练习答案 375
小测验答案 375
第十二天 376
小测验答案 376
练习答案 376
第十三天 376
小测验答案 376
练习 377
第十四天 377
小测验答案 377