
| 探讨新的SQL标准. 编写更有效的查询或开发代码.. 在Oracle、IBM DB2和SQL Server三大数据库中高效应用... |
| Alex Kriegel是在俄勒冈州工作的一位系统架构师。他是《Microsoft SQL Server 2000 Weekend Crash Course》(Wiley,2001)和《SQL Functions》(Wrox,2005)的作者,并与他人合著了《Introduction to Database Management》(Wiley,2007)和《SQL Bible》(Wiley,2003)。. Boris M.Trukhnov在俄勒冈州波特兰的Pope&Talbot,Inc担任高级技术分析师/Oracle DBA。他是《SQL Bible》(Wiley,2003)和《Introduction to Database Management》(Wiley,2007)的合著者。... .. << 查看详细 |
| 第1部分 sql基本概念和原理. 第1章 sql和关系数据库管理系统 3 1.1 理想的数据库特征 3 1.1.1 充足的容量 3 1.1.2 足够的安全和审核 4 1.1.3 多用户环境 4 1.1.4 效率和查找能力 4 1.1.5 可伸缩性 4 1.1.6 用户友好 4 1.2 选择数据库软件 5 1.2.1 市场占有率 5 1.2.2 总拥有成本 5 1.2.3 支持和持久性 6 1.3 主要dbms实现 6 1.4 现实中的数据库例子 7 1.4.1 订购管理系统数据库 7 1.4.2 健康护理提供者数据库 8 1.4.3 视频共享和编辑数据库 8 1.4.4 科学数据库 8 1.4.5 非营利组织数据库 8 .1.5 早期数据库 9 1.5.1 平面文件数据库 9 1.5.2 层次数据库 9 1.5.3 网状数据库 10 1.6 关系数据库 11 1.6.1 表 11 1.6.2 关系 12 1.6.3 主键 12 1.6.4 外键 13 1.6.5 rdbms的发展 13 1.7 其他dbms模型 13 1.8 sql和sql标准简史 14 1.8.1 卑微的开始:rdbms和sql的演变 14 1.8.2 sql标准简史 16 1.9 小结 18 第2章 sql基本概念和原理 19 2.1 约定和要求 19 2.2 sql初探 22 2.2.1 数据库示例 22 2.2.2 获取和导出数据 22 2.2.3 从不同角度看数据 24 2.2.4 聚合 25 2.2.5 数据安全 25 2.2.6 从客户端应用程序访问数据 26 2.2.7 新的发展 26 2.3 平台和时间无关性 27 2.4 小结 28 第3章 sql数据类型 30 3.1 不附加字符串 31 3.1.1 字符串 31 3.1.2 二进制字符串 35 3.2 数字 36 3.2.1 精确数字 37 3.2.2 近似数字 38 3.3 日期和时间数据类型 39 3.3.1 复杂数据类型介绍 39 3.3.2 日期和时间实现 40 3.4 xml数据类型 44 3.5 结构数据类型和用户定义数据类型 44 3.5.1 sql:2003 45 3.5.2 oracle 11g 46 3.5.3 db2 9.5 47 3.5.4 microsoft sql server 2008 48 3.6 其他数据类型 48 3.6.1 boolean 48 3.6.2 rowid 49 3.6.3 urowid 49 3.6.4 bfile 49 3.6.5 datalink 49 3.6.6 bit 49 3.6.7 timestamp 49 3.6.8 sql_variant 49 3.7 null 49 3.8 小结 50 第2部分 创建和修改数据库对象 第4章 创建rdbms对象 53 4.1 表 53 4.2 索引 70 4.3 视图 74 4.3.1 create view语句 74 4.3.2 创建复杂视图 77 4.4 别名和同义词 79 4.4.1 sql:2003 80 4.4.2 oracle 11g的create synonym语句 80 4.4.3 db2 9.5的create alias语句 80 4.4.4 microsoft sql server 2008的create synonym语句 81 4.5 架构 81 4.6 序列 83 4.6.1 sql:2003中的外部序列生成器 84 4.6.2 oracle 11g中的序列 84 4.6.3 db2 9.5 85 4.7 其他sql:2003以及特定于实现的对象 86 4.7.1 域(sql:2003) 86 4.7.2 字符集(sql:2003) 87 4.7.3 排序规则(sql:2003) 87 4.7.4 表空间和文件组 87 4.7.5 物化视图(oracle 11g) 88 4.7.6 数据库链接(oracle 11g) 89 4.7.7 目录(oracle 11g) 90 4.8 create语句交叉参考 90 4.9 小结 92 第5章 修改和删除rdbms对象 93 5.1 表 93 5.1.1 alter table语句 93 5.1.2 drop table语句 99 5.2 索引 100 5.2.1 alter index语句 100 5.2.2 drop index语句 101 5.3 视图 102 5.3.1 alter view语句 102 5.3.2 drop view语句 103 5.4 别名和同义词 103 5.5 架构 104 5.5.1 sql:2003 104 5.5.2 db2 9.5 104 5.5.3 microsoft sql server 2008 104 5.6 序列 105 5.6.1 alter sequence语句 105 5.6.2 drop sequence语句 105 5.7 其他特定于实现的对象 106 5.7.1 域(sql:2003) 106 5.7.2 字符集(sql:2003) 106 5.7.3 排序规则(sql:2003) 106 5.7.4 表空间 106 5.7.5 物化视图(oracle 11g) 107 5.7.6 数据库链接(oracle 11g) 107 5.7.7 目录(oracle 11g) 107 5.8 alter和drop语句交叉参考 108 5.9 小结 110 第3部分 数据操作和事务控制 第6章 数据操作语言 113 6.1 insert:用数据来填充表 113 6.1.1 一般的insert语句子句 114 6.1.2 供应商相关的特定insert语句 118 6.2 update:修改表数据 123 6.2.1 一般的update语句子句 123 6.2.2 供应商特定的update语句细节 126 6.3 delete:从表中删除数据 127 6.3.1 一般的delete语句子句 128 6.3.2 供应商特定delete语句子句 129 6.4 merge:将insert、update以及delete结合到一个语句中 129 6.4.1 一般的merge语句子句 129 6.4.2 供应商特定的merge语句子句 130 6.5 truncate语句 132 6.6 小结 133 第7章 会话、事务和锁 134 7.1 会话 134 7.2 事务 139 7.2.1 什么是事务 139 7.2.2 事务的commit和rollback 141 7.2.3 事务隔离级别 145 7.3 理解锁 147 7.3.1 锁定模式 147 7.3.2 处理死锁 149 7.4 小结 150 第4部分 检索和传送数据 第8章 理解select语句 153 8.1 单表select语句语法 153 8.2 select 子句:选取什么? 154 8.2.1 单列选取 154 8.2.2 多列select 154 8.2.3 使用常量、函数和计算列 156 8.2.4 在select子句中使用子查询 159 8.3 from子句:从哪里选取? 159 8.3.1 从表和视图中选取 159 8.3.2 在from子句中使用别名 160 8.3.3 在from子句中使用子查询(内联视图) 160 8.4 where子句:设置水平限制 161 8.4.1 使用比较运算符 161 8.4.2 复合运算符:使用and和or 162 8.4.3 使用between运算符 162 8.4.4 使用in运算符:集成员身份测试 163 8.4.5 not运算符 164 8.4.6 使用is null运算符:null值的专用测试 164 8.4.7 在where子句中使用子查询 165 8.5 group by和having 子句:汇总结果 167 8.6 order by子句:对查询结果排序 169 8.7 联合多个查询的结果 170 8.7.1 union 171 8.7.2 intersect 172 8.7.3 except(minus) 173 8.8 sql分析函数和top n查询 175 8.8.1 分析函数和sql:2003标准 175 8.8.2 top n查询设计 176 8.8.3 limit n查询 177 8.9 小结 178 第9章 多表查询 179 9.1 内部联接 179 9.1.1 内部联接的两个语法 179 9.1.2 同等联接 180 9.1.3 非同等联接 182 9.1.4 自联接 183 9.1.5 交叉联接(笛卡尔积) 184 9.1.6 对两个以上的表进行联接 185 9.2 外部联接:根据包含null值的列联接表 186 9.2.1 外部联接的两个语法 186 9.2.2 左外部联接 188 9.2.3 右外部联接 189 9.2.4 完全外部联接 190 9.2.5 合并联接 191 9.3 包含内联视图的联接 191 9.4 包含相关查询的多表联接 193 9.5 提高多表查询效率 193 9.6 小结 194 第10章 sql函数 195 10.1 数字函数 197 10.1.1 ceil 198 10.1.2 round 198 10.1.3 trunc 199 10.1.4 rand 199 10.1.5 sign 200 10.2 字符串函数 200 10.2.1 concat 201 10.2.2 charindex、instr、locate和posstr 202 10.2.3 substr和substring.. 203 10.2.4 length 204 10.2.5 lower和upper 205 10.2.6 to_char、char和str 205 10.2.7 replace 206 10.2.8 replicate和repeat 206 10.2.9 translate 206 10.2.10 trim、ltrim和rttim 207 10.3 日期和时间函数 208 10.3.1 getdate、sysdate和current date 209 10.3.2 add_months、dateadd和日期算法 211 10.3.3 extract和datepart 211 10.3.4 dayname、monthname和datename 212 10.3.5 months_between和datediff 213 10.4 聚合函数 213 10.4.1 sum 215 10.4.2 count 216 10.4.3 avg 217 10.4.4 min和max 217 10.5 转换函数 218 10.5.1 不同数据类型之间的转换 218 10.5.2 在不同字符集之间转换 224 10.5.3 oracle 11g的convert、translate...using和unistr 224 10.5.4 特定于数据类型的转换函数 225 10.6 系统函数 226 10.7 杂项函数 228 10.7.1 decode和case 229 10.7.2 coalesce和nullif 230 10.7.3 nvl、nvl2和isnull 230 10.8 用户定义函数 232 10.9 小结 232 第11章 sql运算符 233 11.1 算术运算符和字符串串联运算符 233 11.2 逻辑运算符 235 11.2.1 all 236 11.2.2 any |
商品评论(0条)