Математика

Физика

Химия

Биология

Техника и    технологии

Mastering Oracle SQL and SQL*Plus - LEX DE HAAN 2005 str443
Mastering Oracle SQL and SQL*Plus - LEX DE HAAN 2005 str443

Contents at a Glance
Foreword. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
About the Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
About the Technical Reviewers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
CHAPTER 1 Relational Database Systems and Oracle . . . . . . . . . . . . . . . . . . . . . . . 1
CHAPTER 2 Introduction to SQL, iSQL*Plus, and SQL*Plus . . . . . . . . . . . . . . . . . . 25
CHAPTER 3 Data Definition, Part I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
CHAPTER 4 Retrieval: The Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
CHAPTER 5 Retrieval: Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
CHAPTER 6 Data Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
CHAPTER 7 Data Definition, Part II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
CHAPTER 8 Retrieval: Multiple Tables and Aggregation . . . . . . . . . . . . . . . . . . . . 191
CHAPTER 9 Retrieval: Some Advanced Features . . . . . . . . . . . . . . . . . . . . . . . . . . 233
CHAPTER 10 Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
CHAPTER 11 SQL*Plus and iSQL*Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
CHAPTER 12 Object-Relational Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
APPENDIX A Quick Reference to SQL and SQL*Plus . . . . . . . . . . . . . . . . . . . . . . . . 349
APPENDIX B Data Dictionary Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
APPENDIX C The Seven Case Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
APPENDIX D Answers to the Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
APPENDIX E Oracle Documentation,Web Sites, and Bibliography . . . . . . . . . . . 443
INDEX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
iii

Contents
Foreword. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
About the Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
About the Technical Reviewers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
¦CHAPTER 1 Relational Database Systems and Oracle . . . . . . . . . . . . . . . . . . 1
1.1 Information Needs and Information Systems . . . . . . . . . . . . . . . . . . . . . 1
1.2 Database Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Database Management Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Relational Database Management Systems . . . . . . . . . . . . . . . . . . . . . 10
1.5 Relational Data Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6 Relational Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.7 How Relational Is My DBMS? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.8 The Oracle Software Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.9 Case Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
¦CHAPTER 2 Introduction to SQL, iSQL*Plus, and SQL*Plus . . . . . . . . . . . 25
2.1 Overview of SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2 Basic SQL Concepts and Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.3 Introduction to iSQL*Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.4 Introduction to SQL*Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
¦CHAPTER 3 Data Definition, Part I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.1 Schemas and Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.2 Table Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.3 Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.4 Commands for Creating the Case Tables . . . . . . . . . . . . . . . . . . . . . . . 69
3.5 The Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
v
vi ¦CONTENTS
¦CHAPTER 4 Retrieval: The Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4.1 Overview of the SELECT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4.2 The SELECT Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.3 The WHERE Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.4 The ORDER BY Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.5 AND, OR, and NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.6 BETWEEN, IN, and LIKE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.7 CASE Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.8 Subqueries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.9 Null Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.10 Truth Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
¦CHAPTER 5 Retrieval: Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.1 Overview of Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.2 Arithmetic Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
5.3 Text Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
5.4 Regular Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
5.5 Date Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
5.6 General Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.7 Conversion Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.8 Stored Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.9 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
¦CHAPTER 6 Data Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
6.1 The INSERT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
6.2 The UPDATE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
6.3 The DELETE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6.4 The MERGE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
6.5 Transaction Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.6 Locking and Read Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
¦CHAPTER 7 Data Definition, Part II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
7.1 The CREATE TABLE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
7.2 More on Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
7.3 The ALTER TABLE and RENAME Commands . . . . . . . . . . . . . . . . . . . . 163
7.4 Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
7.5 Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
7.6 Performance Monitoring with SQL*Plus AUTOTRACE . . . . . . . . . . . . 178
7.7 Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
7.8 Synonyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
7.9 The CURRENT_SCHEMA Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
7.10 The DROP TABLE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
7.11 The TRUNCATE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
7.12 The COMMENT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
7.13 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
¦CHAPTER 8 Retrieval: Multiple Tables and Aggregation . . . . . . . . . . . . . 191
8.1 Tuple Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
8.2 Joins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
8.3 Alternative ANSI/ISO Standard Join Syntax . . . . . . . . . . . . . . . . . . . . . 199
8.4 Outer Joins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
8.5 The GROUP BY Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
8.6 Group Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
8.7 The HAVING Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
8.8 Advanced GROUP BY Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
8.9 Partitioned Outer Joins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
8.10 Set Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
8.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
¦CHAPTER 9 Retrieval: Some Advanced Features . . . . . . . . . . . . . . . . . . . . . 233
9.1 Subqueries Continued . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
9.2 Subqueries in the SELECT Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
9.3 Subqueries in the FROM Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
9.4 The WITH Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
9.5 Hierarchical Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
9.6 Analytical Functions and Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
9.7 Flashback Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
9.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
¦CHAPTER 10 Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.1 What Are Views? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.2 View Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.3 What Can You Do with Views? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
10.4 Data Manipulation via Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.5 Data Manipulation via Inline Views . . . . . . . . . . . . . . . . . . . . . . . . . . 282
¦CONTENTS vii
viii ¦CONTENTS
10.6 Views and Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
10.7 Materialized Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
10.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
¦CHAPTER 11 SQL*Plus and iSQL*Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
11.1 SQL*Plus Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
11.2 Bind Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
11.3 SQL*Plus Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
11.4 Report Generation with SQL*Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
11.5 HTML in SQL*Plus and iSQL*Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
11.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
¦CHAPTER 12 Object-Relational Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
12.1 More Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
12.2 Varrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
12.3 Nested Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
12.4 User-Defined Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
12.5 Multiset Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
12.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
¦APPENDIX A Quick Reference to SQL and SQL*Plus . . . . . . . . . . . . . . . . . . . 349
¦APPENDIX B Data Dictionary Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
¦APPENDIX C The Seven Case Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
¦APPENDIX D Answers to the Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
¦APPENDIX E Oracle Documentation, Web Sites,
and Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443

Цена: 200руб.

Назад

Заказ

На главную страницу