图书介绍
轻松掌握:SQLPDF|Epub|txt|kindle电子书版本网盘下载
- (美)(R.K.斯蒂芬斯)Ryan K.Stephens,(美)(R.R.普莱夫)Ronald R.Plew著;郑利强等译 著
- 出版社: 北京:电子工业出版社
- ISBN:7505359134
- 出版时间:2000
- 标注页数:616页
- 文件大小:30MB
- 文件页数:636页
- 主题词:关系型数据库-数据库管理系统 数据库管理系统-关系型数据库
PDF下载
下载说明
轻松掌握:SQLPDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
本章概要1
第一篇1
第1章 开始学习SQL语言2
1.1 SQL语言历史简介2
1.2数据库历史简介2
1.2.1 Codd博士关于数据库模型的12条准则3
1.3数据库结构设计6
1.3.1当今的数据库概述6
1.4.2 SQL和客户/服务器应用的开发7
1.5 SQL语言概述7
1.4跨产品语言7
1.4.1早期的实现7
1.6几种较流行的SQL语言的实现8
1.6.1 Microsoft Access8
1.6.2 Personal Orade 88
1.6.3 Microsoft Query9
1.7开放数据库连接(ODBC)10
1.8应用程序编程中的SQL语言11
1.9小结12
1.10问与答12
1.11工作室12
1.11.1测验13
1.11.2练习13
第2章 查询简介14
2.1 SQL语言的背景14
2.2一般的句法格式14
2.3用SELECT及FROM建立数据检索块15
2.4示例16
2.5第一个查询17
2.5.1结束一个SQL语句17
2.5.2改变列的顺序17
2.5.3选择特定的列18
2.5.4从不同表中选择数据19
2.6使用区别(Distinction)查询19
2.9工作室21
2.9.1测验21
2.8问与答21
2.7小结21
2.9.2练习22
第3章 表达式、条件和操作符23
3.1表达式23
3.2条件24
3.2.1 WHERE子句24
3.3操作符25
3.3.1算术操作符25
3.3.2比较操作符32
3.3.3字符操作符38
3.3.4逻辑操作符42
3.3.5集合操作符45
3.3.6其他操作符:IN和EBTWEEN48
3.4小结50
3.5问与答50
3.6工作室50
3.6.1测验51
3.6.2练习51
4.1.1 COUNT函数52
第4章 利用内置函数生成数据52
4.1聚集函数52
4.1.2 SUM函数53
4.1.3 AVG函数55
4.1.4 MAX函数55
4.1.5 MIN函数56
4.1.6 VARIANCE函数57
4.1.7 STDDEV函数57
4.2日期和时间函数58
4.2.1 ADD_MONTHS函数59
4.2.2 LABT_DAY函数60
4.2.3 MONTHS_BETWEEN函数61
4.2.4 NEW_TIME函数62
4.2.5 NEXT_DAY函数63
4.2.6 SYSDATE函数63
4.3算术函数64
4.3.1 ABS函数65
4.3.2 CELL和FLOOR函数65
4.3.3 COS、COSH、SIN、SINH、TAN和TANH函数66
4.3.5 LN和LOG函数68
4.3.4 EXP函数68
4.3.6 MOD函数69
4.3.7 POWER函数69
4.3.8 SIGN函数70
4.3.9 SQRT函数71
4.4字符函数71
4.4.1 CHR函数72
4.4.2 CONCAT函数72
4.4.4 LOWER和UPPER函数73
4.4.3 INITCAP函数73
4.4.5 LPAD和RPAD函数74
4.4.6 LTRIM和RTRIM函数75
4.4.7 REPLACE函数76
4.4.8 SUBSTR函数78
4.4.9 TRANSLATE函数80
4.4.10 INSTR函数80
4.4.11 LENGTH函数81
4.5转换函数81
4.5.2 TO_NUMBER函数82
4.5.1 TO_CHAR函数82
4.6其他函数83
4.6.1 GREATEST和LEAST函数83
4.6.2 USER函数83
4.7小结84
4.8问与答84
4.9工作室84
4.9.1测验84
4.9.2练习85
第5章 SQL查询中的子句86
5.1用WHERE子句指定查询条件87
5.2 STARTING WITH子句89
5.3 ORDER BY子句——把混乱变为有序90
5.4 GROUP BY子句95
5.5 HAVING子句100
5.6复合子句104
5.6.1大结局107
5.7小结109
5.9.2练习110
5.9.1测验110
5.9工作室110
5.8问与答110
第6章 连接表111
6.1在单个SELECT语句中的多重表111
6.1.1交叉连接表112
6.1.2寻找正确的列116
6.2相等连接116
6.3不等连接121
6.4外部连接和内部连接122
6.5将表与自己连接:自连接125
6.6小结127
6.7问与答128
6.8工作室128
6.8.1测验128
6.8.2练习129
第7章 子查询:嵌入式SELECT语句130
7.1建立一个子查询130
7.2在子查询中使用聚集函数134
7.3嵌套子查询136
7.4参照外部表的相关子查询139
7.5使用EXISTS、ANY和ALL142
7.6小结147
7.7问与答147
7.8工作室148
7.8.1测验148
7.8.2练习148
第一篇回顾150
本篇概要151
第二篇151
第8章 数据库规范化152
8.1规范化数据库152
8.1.1原始数据库152
8.1.2数据库逻辑设计152
8.2范式153
8.2.1第一范式154
8.2.2第二范式154
8.2.3第三范式155
8.3.1参照完整性156
8.3数据库规范化操作156
8.3.2数据库规范化的优点157
8.3.3数据库规范化的缺点157
8.3.4将数据库非规范化158
8.4小结158
8.5问与答158
8.6.1测验159
8.6.2练习159
8.6工作室159
第9章 创建和维护表161
9.1 CREATE DATABASE语句161
9.1.1 CREATE DATABASE选项162
9.1.2数据库设计162
9.1.3创建数据字典163
9.1.4创建关键字段163
9.2 CREATE TABLE语句165
9.2.1表名165
9.2.3字段的数据类型166
9.2.2字段名166
9.2.4表的存储和尺寸169
9.2.5由一个现存的表创建表170
9.3 ALTER TABLE语句171
9.4 OROP TABLE语句172
9.5 DROP DATABASE语句173
9.6小结173
9.7问与答174
9.8.2练习175
9.8.1测验175
9.8工作室175
第10章 数据完整性控制176
10.1约束简介176
10.1.1数据完整性176
10.1.2为什么使用约束176
10.2约束的种类177
10.2.1非空约束(NOT NULL)177
10.2.2主键约束178
10.2.3唯一约束179
10.2.4外键约束180
10.2.5检验约束181
10.3约束管理182
10.3.1约束的正确次序182
10.3.2创建约束的正确方法183
10.3.3 Oracle参照完整性报告实例183
10.4小结186
10.6.2练习187
10.6.1测验187
10.6工作室187
10.5问与答187
第11章 操作数据189
11.1数据操作语句简介189
11.2用INSERT语句输入数据189
11.2.1用INSERT…VALUSE语句输入一条记录190
11.2.2插入NULL值(空值)191
11.2.3插入唯一值192
11.2.4用INSERT…SELECT语句输入多条记录193
11.3用UPDATE语句更新现有数据196
11.4用DELETE语句删除信息198
11.5从外部数据源输入和输出数据202
11.5.1 Microsoft Access202
11.5.2 Microsoft SQL Server203
11.5.3 Personal Oracle8204
11.6小结204
11.7问与答204
11.8工作室205
11.8.1测验205
11.8.2练习206
第12章 事务控制207
12.1事务控制207
12.1.1银行应用207
12.2开始一个事务209
12.3结束一个事务211
12.4撤销事务212
12.5使用事务保存点(SAVEPOINT)215
12.6小结217
12.8.1测验218
12.8.2练习218
12.8工作室218
12.7问与答218
第13章 SQL语言中的日期与时间220
13.1如何存储日期与时间型数据220
13.1.1 ANSI标准的日期与时间型数据220
13.1.2 DATETIME元素221
13.1.3特定数据类型的实现221
13.2日期函数222
13.2.1当前日期222
13.2.2时区223
13.2.3在日期上增加时间224
13.2.4日期相减225
13.2.5比较日期和时间段226
13.2.6其他的日期函数227
13.3日期转换227
13.3.1日期描述228
13.3.2转换日期为字符串230
13.3.3转换字符串为日期230
13.4小结231
13.6.2练习232
13.6.1测验232
13.5问与答232
13.6工作室232
第14章 创建视图234
14.1视图简介234
14.2使用视图234
14.2.1考察简单视图236
14.2.2更改列名238
14.2.3查看SQL视图处理过程239
14.2.5在视图中修改数据243
14.2.4使用SELECT语句的限制243
14.2.6与使用视图修改数据有关的问题246
14.2.7视图的一般应用246
14.2.8用DROP VIEW语句删除视图249
14.3小结250
14.4问与答250
14.5工作室251
14.5.1测验251
14.5.2练习251
第二篇回顾252
第三篇253
本篇概要253
第15章 在表上创建索引以提高数据库性能254
15.1使用索引254
15.1.1索引是什么254
15.1.2索引技巧259
15.1.3在多个字段上建立索引260
15.1.4使用带有UNIQUE关键字的CREATE INDEX语句261
15.1.5索引与链接262
15.1.6使用聚族(cluster)263
15.2小结264
15.3问与答264
15.4工作室265
15.4.1测验265
15.4.2练习265
第16章 优化SQL语句以提高性能267
16.1提高SQL语句的可读性267
16.2避免扫描整个表268
16.4查询中各成分的安排269
16.3增加一个新索引269
16.4.1过程271
16.4.2避免使用OR271
16.5联机分析处理(OLAP)与联机事务处理(OLTP)272
16.5.1 OLTP调整273
16.5.2 OLAP调整273
16.6成批装入与事务处理273
16.7通过删除索引优化数据装载275
16.8经常提交数据——保证系统正常运行的关键275
16.9在动态环境中重建表和索引276
16.10调整数据库278
16.11影响数据库性能的因素280
16.12内置调整工具280
16.13小结281
16.14问与答281
16.15工作室282
16.15.1测验282
16.15.2练习282
第17章 数据库安全性284
17.1数据库管理员须知284
17.3如何确保数据库的安全性285
17.2流行的数据库产品及其安全性285
17.4 Personal Oracle8和安全性286
17.4.1创建用户286
17.4.2创建角色(Role)287
17.4.3用户特权288
17.4.4用户访问视图289
17.4.5用视图实现安全性294
17.4.6使用同义词代替视图295
17.4.7使用WITH GRANT OPTION子句297
17.5小结298
17.6问与答298
17.7工作室299
17.7.1测验299
17.7.2练习299
第18章 数据字典300
18.1数据字典介绍300
18.2数据字典的用户300
18.3.1 Oracle的数据字典301
18.3.2 Sybase的数据字典301
18.3数据字典的内容301
18.4 Oracle数据字典的剖析302
18.4.1用户视图302
18.4.2系统DBA视图309
18.4.3动态性能视图318
18.4.4 PLAN表320
18.5小结320
18.7.2练习321
18.7.1测验321
18.7工作室321
18.6问与答321
第19章 存储过程、触发器和嵌入式SQL语言322
19.1创建临时表322
19.2使用游标327
19.2.1创建游标327
19.2.2打开游标328
19.2.3滚动游标328
19.2.4测试游标的状态329
19.2.5关闭游标330
19.3创建并使用存储过程331
19.2.6游标的使用域331
19.3.1使用存储过程参数333
19.3.2删除存储过程334
19.3.3嵌套存储过程335
19.4设计和使用触发器336
19.4.1触发器和事务337
19.4.2使用触发器的限制339
19.4.3嵌套触发器339
19.5在执行之前测试SELECT语句339
19.6.1静态和动态SQL语言340
19.6使用嵌入式SQL语言340
19.7使用SQL编程341
19.8小结342
19.9问与答342
19.10工作室343
19.10.1测验343
19.10.2练习343
第20章 SQL语言新标准——SQL3中的新对象344
20.1 CREATE ROLE语句探讨344
20.2创建触发器346
20.3使用CREATE TYPE语句348
20.4小结351
20.5问与答351
20.6工作室352
20.6.1测验352
20.6.2练习352
第21章 使用SQL语言生成SQL语句353
21.1使用SQL语言生成SQL语句的目的353
21.2.1 SET ECHO ON/OFF354
21.2几个SQL* Plus命令354
21.2.2 SET FEEDBACK ON/OFF355
21.2.3 SET HEADING ON/OFF355
21.2.4 SPOOL FILENAME/OFF355
21.2.5 START FILENAME355
21.2.6 ED FILENAME355
21.3统计所有表中的行数356
21.4为多个用户授予系统权限360
21.5将表的权限授予其他用户362
21.6为装入数据而废除对表的结束364
21.7在单个区域内创建大量的同义词365
21.8在表上创建视图368
21.9截断某一用户的所有表370
21.10使用SQL语句生成Shell370
21.11对表和索引进行逆向工程372
21.12小结372
21.14工作室373
21.14.1测验373
21.13问与答373
21.14.2练习374
第三篇回顾375
附加篇377
本篇概要377
第22章 SQL语句的调试378
22.1常见错误378
22.1.1表或视图不存在378
22.1.2无效的用户名或口令379
22.1.3没有FROM关键字379
22.1.4不允许使用分组函数380
22.1.5无效的列名381
22.1.6缺少关键字381
22.1.7缺少左括号382
22.1.8缺少右括号382
22.1.9缺少逗号383
22.1.10列名定义不明确383
22.1.11 SQL命令没有正常结束384
22.1.12缺少表达式384
22.1.14缺少数据值385
22.1.13函数缺少参数385
22.1.15完整性约束冲突——双亲主键没有找到386
22.1.16 Oracle不能使用386
22.1.17向列中插入的数据太大387
22.1.18远程数据库服务器不能识别连接描述符中的系统ID号387
22.1.19没有授权的权限387
22.1.20语句中的无效字符——Escape字符388
22.1.21不能创建操作系统文件388
22.2常见的逻辑错误388
22.2.1在SQL语句中使用保留字388
22.2.2在多个选择列上使用DISTINCT命令389
22.2.3删除不合适的表390
22.2.4在多模式的数据库中公共同义词的使用390
22.2.5可怕的笛卡尔乘积390
22.2.6数据输入质量不高391
22.2.7采用不合适的文件系统结构391
22.2.8对于很大的表采用缺省的存储参数391
22.2.9将数据库对象存储到系统表空间中392
22.4小结393
22.3.1在数据库中查找重复的记录393
22.3防止数据出现麻烦393
22.2.11没有规划好系统资源的使用393
22.2.10大量的备份文件没有压缩393
22.5问与答394
22.6工作室394
22.6.1测验394
22.6.2练习395
第23章 创建复合查询396
23.1本章使用的表396
23.2.1根据生日计算年龄399
23.2复合查询的例子399
23.2.2将一个DAY函数分解成小时、分和秒400
23.2.3将字节转换成KB和MB401
23.2.4数据库中段的报表402
23.2.5 DML中的子查询402
23.2.6格式化日期403
23.2.7包含取最大值的子查询404
23.2.8多个子查询405
23.2.9使用破折号和括号格式化数值型数据405
23.2.11在一个列中查找下一个最大的数值406
23.2.10将数值型数据按给定的百分比递增406
23.2.12空值(NULL)处理408
23.3建立复合查询的技巧410
23.4小结411
23.5问与答411
23.6工作室411
23.6.1测试411
23.6.2练习412
24.2 SQL*Plus缓冲区413
第24章 用Oracle的SQL*Plus生成满意的报表413
24.1 SQL*Plus介绍413
24.3用DESCRIBE命令查看表结构417
24.4用SHOW命令显示系统设置418
24.5用文件命令操作文件420
24.5.1 SAVE、GET和EDIT命令420
24.5.2运行SQL文件420
24.5.3存储查询结果422
24.6用SET命令设置工作环境423
24.7使用LOGIN SQL文件426
24.8用CLEAR命令清除SQL*Plus的设置427
24.9格式化输出结果428
24.9.1 TTITLE和BTITLE命令428
24.9.2格式化的列(列、标题、格式)429
24.10创建报表和分组合计430
24.10.1 BREAK ON430
24.10.2 COMPUTE431
24.11.1替代变量( )434
24.11在SQL*Plus中使用变量434
24.11.2 DEFINE435
24.11.3 ACCEPT435
24.11.4 NEW_VALUE437
24.12使用DUAL表438
24.13 DECODE函数439
24.14日期转换442
24.15执行一系列SQL文件444
24.16在SQL脚本文件中加注释445
24.17高级报表446
24.18小结447
24.19问与答447
24.20工作室448
24.20.1测验448
24.20.2练习448
第25章 Oracle的PL/SQL语言简介449
25.1 PL/SQL介绍449
25.2 PL/SQL中的数据类型449
25.2.3二进制数据类型450
25.2.2数值数据类型450
25.2.1字符串数据类型450
25.2.4日期数据类型451
25.2.5布尔型451
25.2.6行号(ROWID)451
25.3 PL/SQL程序块结构451
25.4 DECLARE部分452
25.4.1变量赋值452
25.4.2常量赋值452
25.4.5 %ROWTYPE属性453
25.4.3游标的定义453
25.4.4 %TYPE属性453
25.4.6 %ROWCOUNT属性454
25.5 PROCEDURE部分454
25.5.1 BEGIN…END语句454
25.5.2游标控制命令455
25.5.3条件语句456
25.6.1异常事件的触发459
25.6.2异常事件处理程序的执行459
25.6 EXCEPTION部分459
25.6.3插入注解460
25.6.4 PL/SQL程序块的执行460
25.6.5为用户显示输出结果461
25.7 PL/SQL中的事务控制461
25.8 PL/SQL程序的完整介绍462
25.8.1样表和数据462
25.8.2 PL/SQL程序块实例463
25.8.3另一个实例466
25.9存储过程、程序包和触发器469
25.9.1存储过程样本470
25.9.2程序包样本471
25.9.3触发器样本471
25.10小结473
25.11问与答474
25.12工作室474
25.12.1测验474
25.12.2练习475
26.2对ANSI SQL语言的扩充476
26.2.1 Transact-SQL面向哪些用户476
第26章 Transact-SQL介绍476
26.1 Transact-SQL概述476
26.2.2 Transact-SQL的基本构成477
26.3数据类型477
26.3.1字符串类型477
26.3.2数值数据类型477
26.3.5二进制串478
26.3.6位(bit)——一种逻辑数据类型478
26.3.4货币数据类型478
26.3.3日期数据类型478
26.4使用Transact-SQL访问数据库479
26.4.1 BASEBALL数据库479
26.4.2局部变量的声明481
26.4.3全局变量的声明481
26.4.4变量的使用483
26.4.5 PRINT命令484
26.5建立程序流程控制484
26.5.1 BEGIN和END语句484
26.5.2 IF…ELSE语句485
26.5.4测试查询结果487
26.5.3 EXISTS条件487
26.5.5 WHILE循环488
26.5.6 BREAK命令488
26.5.7 CONTINUE命令489
26.5.8使用WHILE循环滚动访问一个表489
26.6 Transact-SQL通配符490
26.7使用COMPUTE命令创建合计报表491
26.8日期转换491
26.9 SQL Server的诊断工具——SET命令492
26.11问与答493
26.10小结493
26.12工作室494
16.12.1测验494
26.12.2练习494
第27章 Visual C++和Delphi中的动态SQL语言495
27.1几个应用程序开发工具简介495
27.1.1 ODBC495
27.1.2 Personal Oracle8495
27.1.3 InterBase SQL495
27.1.5 Delphi496
27.1.4 Visual C++496
27.3创建数据库497
27.2开始运行Oracle和InterBase497
27.4 用Microsoft Query执行连接502
27.5使用Visual C++和SQL505
27.6使用Delphi和SQL511
27.9工作室517
27.9.2练习517
27.9.1测验517
27.8问与答517
27.7小结517
第28章 MySQL介绍518
28.1 MySQL管理518
28.1.1 MySQL安装518
28.1.2启动和停止MySQL519
28.1.3 MySQL的初始权限519
28.2 MySQL客户端程序520
28.2.1连接数据库520
28.2.2命令行选项520
28.2.3输入MySQL客户端命令521
28.2.4执行命令的历史记录523
28.2.5批处理模式523
28.2.6 SHOW命令524
28.3 MySQL实用程序524
28.4小结525
28.5问与答525
28.6工作室525
28.6.1测验525
28.6.2练习526
附加篇回顾527
附录530
附录A 答案530
附录B 创建表的实例代码571
附录C 生成Populate表中数据的代码575
附录D 第27章的C++程序源代码586
附录E 第27章的Delphi程序源代码601
附录F 常用SQL命令术语603
附录G ASCII码表609
附录H 相关资源614