Understanding the New SQL: A Complete Guide

Cover
Morgan Kaufmann, 1993 - 536 Seiten
SQL is the way to develop, program, and use database applications. SQL-92 is a major advance over earlier versions, offering the first complete SQL language. DB programmers will have the advantage of knowing that applications written in SQL-92 will be portable to all hardware platforms for many years to come. As the editor of the new standard, Jim Melton is an authority on the language and its new features. Using a highly readable, conversational style, the authors clearly present the power of SQL. They describe practical methods of using SQL to solve problems, advanced SQL query expressions, dynamic SQL, transaction models, and database design. Beginning with a tutorial on basic relational database concepts, subsequent chapters develop SQL and clarify the differences between SQL-89 and SQL-92. Throughout, a retail video and music store is used as an example that develops with the SQL presentation. The book is enhanced by a complete dynamic SQL example, coverage of international character sets, and a look at future generations of SQL. Whether you're a newcomer to SQL or an experienced programmer using PCs, workstations, mini- or mainframes, Understanding the New SQL is an essential resource for current and future implementation of SQL.
 

Ausgewählte Seiten

Inhalt

Introduction to SQL92
3
12 What is SQL?
4
122 Procedural Versus Nonprocedural Languages
5
14 The Relational Model
6
142 Mathematical Foundations
7
15 The History of the SQL Language
9
16 SQL92 The New Revision
10
161 New Features
11
1024 Constraint Names
210
103 Assertions
211
104 PRIMARY KEY
215
105 Referential Integrity
217
1051 FOREIGN KEY
218
1052 Referential Constraint Actions
221
106 Multiple Cascades
224
107 More About Referential Integrity Constraints
227

162 Size of SQL92
12
164 Conforming to SQL92
13
17 Chapter Summary
14
Getting Started with SQL92
15
222 What is a Database Management System?
16
23 Data and Metadata
17
24 Data Models
18
25 The Relational Model
19
252 Primitive Data Types
20
253 Relational Operations
21
254 Closure of the Relational Model
23
261 Views
24
262 Users and Privileges
25
27 SQL Data Types
26
271 Exact Numerics
27
273 Character Strings
28
274 Bit Strings
29
275 Datetimes
30
276 Intervals
32
28 Logic and Null Values
33
29 Data Conversions
35
210 SQL Statements
36
211 Static Versus Dynamic Execution
37
212 The Transaction Model
38
213 Our Example
40
214 Identifiers
41
215 Chapter Summary
42
Basic Table Creation and Data Manipulation
43
32 Set Orientation
44
34 Basic Data Manipulation
47
341 DISTINCT
48
342 Inside the SELECT Statement
49
344 WHERE and
50
345 Search Conditions Using AND
51
346 More SELECT Statements
52
35 Updating Information
54
36 Inserting Information
57
37 Deleting Information
59
38 Chapter Summary
60
Basic Data Definition Language DDL
61
42 Data Definition Fundamentals
62
422 Catalog Concepts
64
424 Columns
68
431 SQL Syntax for Tables and Columns
69
432 Character Sets
72
434 Temporary Tables
73
The ALTER and DROP Statements
75
436 Schemas
77
437 Views
78
438 WITH CHECK OPTION
81
44 Chapter Summary
82
Values Basic Functions and Expressions
83
53 Literals
84
54 Parameters
87
541 Types of Parameters
88
55 Special Values
91
56 Column References
92
57 Some Terminology
95
582 MAX
98
583 MIN
101
584 SUM
102
59 Value Functions
103
592 String Value Functions
104
593 Datetime Value Functions
107
5101 Numeric Value Expressions
108
5102 String Value Expressions
109
5104 Interval Value Expressions
111
511 Chapter Summary
112
Advanced Features of SQL92
113
Advanced Value Expressions CASE CAST and Row Value Expressions
115
621 CASE and Search Conditions
116
622 CASE and Values
117
623 NULLIF
118
624 COALESCE
119
63 The CAST Expression
120
64 Row Value Constructors
122
65 Chapter Summary
124
Predicates
125
73 Subqueries
126
741 BETWEEN
130
742 NOT BETWEEN
131
75 NULL Predicate
132
76 IN Predicate
134
77 LIKE Predicate
135
78 EXISTS and UNIQUE Predicates
138
79 OVERLAPS Predicate
139
710 SOME ANY and ALL
140
711 MATCH Predicate
143
712 Search Conditions
145
713 Chapter Summary
147
Working with Multiple Tables The Relational Operators
149
83 Types of Join Operations
150
831 OldStyle Joins
152
832 The CROSS JOIN
156
833 The NATURAL JOIN
157
834 Condition JOIN
158
835 Column Name JOIN
159
836 Joins So Far
160
838 The OUTER JOIN
161
84 The UNION Operator
164
841 Alternative Syntax
169
86 The INTERSECT and EXCEPT Operators
171
87 Another Example
172
88 Chapter Summary
173
Advanced SQL Query Expressions
175
92 Query Specifications
176
921 Table Expressions
178
922 GROUP BY
181
923 Updatable Query Specifications
184
931 CORRESPONDING
186
94 Joined Table
187
95 Grouped Tables
194
951 Grouped Views
196
97 Subqueries
197
98 Chapter Summary
198
Constraints Assertions and Referential Integrity
199
102 Column Constraints and Table Constraints
201
1021 NOT NULL
202
1022 UNIQUE
203
1023 CHECK
204
109 Chapter Summary
228
SQL and Applications
229
Accessing SQL from the Real World
231
112 Data Access Methods and Data Types
232
113 Applications Interface Mechanisms for SQL
233
114 Direct Invocation
234
1152 Embedded Exception Declarations
236
1153 Embedded SQL Declarations
238
1154 Embedded SQL statements
248
1161 Some Additional Information About Privileges
253
1162 An Implementation Note
254
118 Package SQL STANDARD
255
119 Chapter Summary
258
Cursors
259
1221 Syntax
261
1222 Ordering and Column Naming
262
1223 Updatability
264
1224 Sensitivity
265
1225 Scrollable Cursors
267
123 OPEN and CLOSE
268
124 FETCH
269
125 Cursor Positioning
270
1251 Positioned DELETE and UPDATE Statements
271
Privileges Users and Security
273
132 GRANT
275
1321 Basic Viewing Privileges
277
1325 PUBLIC Access and Privileges on VIEWS
278
1327 Constraints and Privileges
279
1328 USAGE
280
133 Other Rules
281
134 Revoking Privileges
282
135 Additional Details of REVOKE
284
136 Chapter Summary
291
Transaction Management
293
142 SQL 92 Transaction Syntax
294
143 SQL92 Isolation Levels
295
144 Mixed DML and DDL
300
146 Transactions and Constraints
301
147 Additional Transaction Termination Actions
302
Connections and Remote Database Access
303
153 Connection Statements
306
1532 SET CONNECTION
307
154 RDA Remote Database Access
308
155 Termination Statements and Connections
309
Dynamic SQL
311
163 The Philosophy of Dynamic SQL
313
1631 Parameters
314
164 Outline of Dynamic SQL Processing
315
1641 Parameters and Codes
316
165 The EXECUTE IMMEDIATE Statement
325
166 PREPARE and EXECUTE Statements
326
167 The DESCRIBE Statement
329
168 The EXECUTE Statement Revisited
332
169 Dynamic SQL and Cursors
335
1691 Dynamic Positioned Statements
337
1610 A Dynamic SQL Example
339
1611 Chapter Summary
345
The Finishing Touches
347
Diagnostics and Error Management
349
173 SQL Statement Codes
358
174 Chapter Summary
360
Internationalization Aspects of SQL92
361
182 Character Sets and Collations
362
1821 Coercibility
364
1822 Coercibility Attributes
366
1823 ORDER BY
367
1824 GROUP BY
368
184 Chapter Summary
369
Information Schema
371
193 DEFINITION_SCHEMA and Base Tables
372
195 INFORMATION_SCHEMA and Privileges
373
197 Identifier Representation
374
198 The DEFINITION_SCHEMA
376
1982 The Base Tables
377
1983 Assertions on the Base Tables
380
199 The INFORMATION_SCHEMA
381
1992 Assertion
382
1910 Chapter Summary
384
A Look to the Future
387
2022 Triggers
388
2023 Recursive Operations
390
2024 New Data Types
391
2025 Other Relational Features
392
203 Support for the Object Paradigm
393
204 Chapter Summary
394
Appendices
395
Designing SQL92 Databases
397
A3 Levels of Database Design
398
A4 Conceptual Database Design
399
A41 Conceptual Objects
400
A42 Performing Conceptual Design
405
A5 Logical Database Design
407
A52 Normalization
409
A6 Physical Database Design
411
A8 Appendix Summary
412
A Complete SQL92 Example
413
B2 The Schema Definition
414
B3 Application Code
419
B32 Data Modification
424
B33 Table Structure Modification
430
B34 Data Removal
432
B35 Data Access and Management
433
The SQL92 Annexes Differences ImplementationDefined and ImplementationDependent Features Deprecated Features and Leveling
441
C22 Compatible Differences
444
C3 ImplementationDefined and ImplementationDependent
445
C31 ImplementationDefined
446
C32 ImplementationDependent
456
C4 Deprecated Features
461
C6 Appendix Summary
463
Relevant Standards Bodies
465
Status Codes
469
The SQL Standardization Process
473
F22 International Standards
475
F3 History of the SQL Standard
476
F31 SQL2
478
F6 Other SQLRelated Organizations
479
F7 Appendix Summary
480
The Complete SQL92 Language
481
Index
529
Urheberrecht

Andere Ausgaben - Alle anzeigen

Häufige Begriffe und Wortgruppen

Autoren-Profil (1993)

Jim Melton is editor of all parts of ISO/IEC 9075 (SQL) and is a representative for database standards at Oracle Corporation. Since 1986, he has been his company's representative to ANSI INCITS Technical Committee H2 for Database and a US representative to ISO/IEC JTC1/SC32/WG3 (Database Languages). In addition, Jim has participated in the W3C's XML Query Working Group since 1998 and is currently co-Chair of that Working Group. He is also Chair of the WG's Full-Text Task Force, co-Chair of the Update Language Task Force, and co-editor of two XQuery-related specifications. He is the author of several SQL books.

Bibliografische Informationen