Skip to content

Introduction to Relational Databases and SQL Programming

Spend $50 to get a free DVD!

ISBN-10: 0072229241

ISBN-13: 9780072229240

Edition: 2004

Authors: Christopher Allen, Catherine Creary, Simon Chatwin

List price: $75.00
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

This textbook provides a hands-on approach to relational database design and database management within an Oracle context.
Customers also bought

Book details

List price: $75.00
Copyright year: 2004
Publisher: McGraw-Hill Osborne
Publication date: 12/15/2003
Binding: Mixed Media
Pages: 560
Size: 8.50" wide x 10.75" long x 0.75" tall
Weight: 1.980
Language: English

Christopher Allen is one of the leaders of the iPhone Web Developer community.He is the host of iphonewebdev.com, which is the largest community of iPhonebasedweb developers anywhere, and manages its mailing list. He also helped toorganize iPhoneDevCamp and oversaw its Hack-a-thon. Christopher is a longtimetechnologist, and is also a leader in social software and was one of the authors ofTLS, the next-generation SSL protocol.

Introductionp. xvii
Introducing Relational Databasesp. 1
What Exactly Is a Database?p. 1
Tablesp. 1
Rows/Recordsp. 2
Columns/Fieldsp. 2
How Is a Database Different from a Spreadsheet?p. 3
Many Rowsp. 3
Many Users Simultaneouslyp. 4
Securityp. 4
Relational Abilitiesp. 5
Constraints to Ensure Data Qualityp. 6
Case Study--Clapham Specialty Storep. 6
Designing Your First Databasep. 7
How Will Knowing This Help You?p. 8
When Developing Softwarep. 8
When Doing Database Administrationp. 8
When Doing Business Analysisp. 8
If You Just Want to Know How to Use Databases Betterp. 9
History of SQLp. 9
Chapter 1 Reviewp. 11
Storing and Retrieving Data: The Basicsp. 16
Prepare to Work with a Databasep. 17
Creating a Tablep. 17
Inserting Recordsp. 18
Selecting Recordsp. 18
Dropping a Tablep. 18
Creating Tablesp. 20
Guidelines for Naming Tables and Columnsp. 21
Creating a More Involved Tablep. 24
Determining a Table's Structurep. 30
NULL and NOT NULL Columnsp. 31
Inserting Data--Additional Techniquesp. 32
How to Insert Records Containing NULL Valuesp. 32
Creating and Populating a Tablep. 35
How to Insert Data That Contains Apostrophesp. 37
Viewing Data from a Table--Additional Techniquesp. 37
Selecting Specific Columnsp. 38
Changing Column Orderp. 38
Performing Math Using Data in a Tablep. 39
Connecting Two or More Pieces of Text Togetherp. 41
Assigning Aliases to Columnsp. 42
Changing the Data Values You Viewp. 43
Chapter 2 Reviewp. 45
Performing Advanced Data Manipulationp. 52
SQL Command Categoriesp. 53
Data Definitionp. 53
Data Manipulationp. 53
Data Controlp. 53
Data Retrievalp. 54
Transaction Controlp. 54
Limiting Which Records You Selectp. 54
Filtering Records Based on Numbersp. 55
Filtering Records Based on Textp. 59
Filtering Records Based on Datesp. 60
Viewing Records in a Different Orderp. 62
Sorting on Individual Columnsp. 63
Sorting on Multiple Columnsp. 63
Showing Only Unique Valuesp. 64
Selecting from the DUAL Tablep. 66
Modifying Data in a Tablep. 67
Removing Records from a Tablep. 68
Deleting Rows Matching Specific Criteriap. 68
Deleting All Rowsp. 68
Transaction Controlp. 69
Undoing DML Transactionsp. 69
Making Data Available to Othersp. 72
Implicit and Explicit COMMITsp. 73
Performing Advanced Data Manipulationp. 74
Chapter 3 Reviewp. 75
Controlling SQL*Plusp. 80
Editing Prior Commandsp. 81
Using a Text Editorp. 81
Using the EDIT Commandp. 82
Line-Level Editingp. 83
Copying and Pastingp. 85
Using Your Mouse to Edit Textp. 86
Clearing the SQL*Plus Screenp. 87
Customizing the SQL*Plus Environmentp. 87
Customizing Using the SQL*Plus Menup. 87
Customizing Using Commandsp. 89
Saving Environment Customizationsp. 89
Producing More Readable Outputp. 90
Formatting Numbers in SQL*Plusp. 90
Formatting Text in SQL*Plusp. 91
Formatting Column Headings in SQL*Plusp. 92
Spooling Output to Diskp. 94
SQL Script Filesp. 95
Creating a Script Filep. 95
Running a Script Filep. 96
Using Variables in Script Filesp. 96
Chapter 4 Reviewp. 99
Oracle SQL Built-in Functionsp. 104
Implementing Commonly Used Single-Row Functionsp. 105
System Variablesp. 106
Number Functionsp. 108
Text Functionsp. 110
Using Single-Row Functionsp. 120
Datep. 121
Data Conversionp. 126
Other Functionsp. 132
Implementing Commonly Used Group Functionsp. 139
Grouping Data via the GROUP BY Clausep. 142
Including and Excluding Grouped Rows via the HAVING Clausep. 143
Using Group Functionsp. 145
Chapter 5 Reviewp. 147
Indexes, Joins, and Subqueriesp. 152
Creating the Test Tablesp. 153
Indexesp. 155
Indexes in Databasesp. 155
How to Create Indexesp. 156
Types of Indexesp. 157
B-Tree Indexesp. 157
Bitmap Indexesp. 159
Bitmap Versus B-Tree Indexesp. 160
Function-Based Indexesp. 160
When to Use Indexesp. 161
Relationships Between Tablesp. 162
Creating an Indexp. 163
Writing SELECT Statements to Display Data from More Than One Tablep. 164
Types of Joinsp. 167
Set Operatorsp. 173
Writing Subqueriesp. 177
What Is a Subquery?p. 177
Types of Problems Subqueries Can Solvep. 177
Single-Row Subqueriesp. 177
Multirow Subqueriesp. 179
Multicolumn Subqueriesp. 180
Correlated Subqueriesp. 181
Chapter 6 Reviewp. 183
Creating a Program with PL/SQLp. 188
What Is PL/SQL?p. 189
Describing PL/SQLp. 192
Who's Who in SQL, PL/SQL, and SQL*Plusp. 193
Stored Procedures, Functions, and Triggersp. 194
Stored Procedures and SQL Scriptsp. 196
Structure of a PL/SQL Blockp. 196
Header Sectionp. 197
Declaration Sectionp. 197
Execution Sectionp. 198
Exception Sectionp. 198
Creating a Simple PL/SQL Procedurep. 199
Calling Procedures and Functionsp. 200
PL/SQL Variables and Constantsp. 201
Declaring PL/SQL Variablesp. 202
Declaring PL/SQL Constantsp. 202
Assigning Values to Variablesp. 203
Using Variablesp. 204
Control Structures in PL/SQLp. 205
IF Statementp. 206
Loopsp. 208
Cursorsp. 210
Nested Loops and Cursor Examplep. 215
Error Handlingp. 217
Exceptionsp. 217
System-Defined Exceptionsp. 218
Programmer-Defined Exceptionsp. 220
Creating a Programmer-Defined Exceptionp. 221
Chapter 7 Reviewp. 223
Reading a Data Modelp. 230
Overview of Data Model Designp. 231
Purpose and Benefits of Modelsp. 231
Relational Integrity: Quality Datap. 232
Types of Data Modelsp. 233
Conceptual Modelp. 233
Logical Data Modelp. 234
Physical Data Modelp. 234
Reading an Entity Relationship Diagramp. 236
Entitiesp. 236
Attributesp. 237
Relationshipsp. 238
Cardinality and Optionality Notationsp. 240
Reading an Entity Relationship Diagramp. 241
Chapter 8 Reviewp. 242
Basics of Designing a Database's Structurep. 246
The Business Specification: Let the Data Tell You Where It Goesp. 247
Selecting the Database's Grainp. 247
Entities and Attributesp. 248
Identifying Records Reliably: Primary Keysp. 251
Why Do You Need a Primary Key?p. 251
Composite Primary Keysp. 251
Natural Primary Keys vs. Surrogate Primary Keysp. 252
Relationships: Referring to Data in Other Tablesp. 254
Common Data Model Standardsp. 255
Crow's Foot (IE)p. 256
IDEF1Xp. 256
Relationships: Cardinality and Optionalityp. 258
One-to-Manyp. 258
Many-to-Manyp. 259
One-to-Onep. 260
Optionalityp. 261
Dependency: Identifying Relationshipsp. 263
Recursive vs. Binaryp. 264
Modeling Multiple Categories: Supertype and Subtypesp. 264
Creating Basic Data Modelsp. 265
Categories, Supertypes, and Subtypesp. 265
Implementing Super/Subtypes in a Physical Modelp. 267
Chapter 9 Reviewp. 268
Normalizationp. 272
The Process of Normalizationp. 273
Dependencyp. 273
Dependents and Determinantsp. 273
The First Three Normal Formsp. 275
First Normal Form: Eliminate Repeating Groupsp. 275
Second Normal Form: Eliminate Redundant Datap. 277
Third Normal Form: Eliminate Attributes Not Dependent on the Primary Keyp. 278
Apply the Normal Forms to a Database Modelp. 279
The Fourth and Fifth Normal Formsp. 279
Fourth Normal Form: Isolate Independent Multiple Relationshipsp. 280
Fifth Normal Form: Isolate Semantically Related Multiple Relationshipsp. 282
The Rules You Really Needp. 283
Anomalies in the Datap. 283
Normalizing the Datap. 284
Insertp. 285
Deletep. 285
Updatep. 285
A Tax on Being Law-Abidingp. 286
Moving from Logical to Physical Modelsp. 286
Choosing Your Enginep. 286
Changing Terminologyp. 287
Translating Super- and Subtypesp. 287
Chapter 10 Reviewp. 289
Analyzing Data Quality Issuesp. 294
Datatypes and Missing Data: Quality Basicsp. 295
Handling Missing Valuesp. 295
Apples and Oranges: Defining Datatypesp. 296
Choosing a Datatypep. 298
Creating a Table and Inserting Datap. 299
Converting Datatypes: Weak and Strong Typingp. 301
Data Domains: Sanity Checksp. 301
Domains as Sets of Valuesp. 301
Column and Table Constraintsp. 302
Column Constraintsp. 303
Table Constraintsp. 305
Primary Key Constraints and Indexesp. 307
Uniqueness and How to Enforce Itp. 307
Alternate Keysp. 310
Other Indexesp. 311
Foreign Key Constraints: Values from Other Tablesp. 312
Adding the Constraintp. 313
Implementing Cardinality and Optionalityp. 314
Cascading Effectsp. 316
Cascade Delete on a Recursive Relationshipp. 319
The Cascades That Don'tp. 321
Creating the Movie Databasep. 322
Declarative Relational Integrity: Pros and Consp. 326
Declaring Foreign Key Constraintsp. 327
Triggers and Procedural Codep. 327
Naming Constraints: Make It Easy for the Programmersp. 329
Naming Tables and Columnsp. 330
Naming Check Constraintsp. 330
Naming Foreign Key Constraintsp. 330
Naming Indexesp. 331
Chapter 11 Reviewp. 332
Other Useful Oracle Techniquesp. 338
Transferring Data Between Tablesp. 339
Transferring Data Using INSERTp. 342
Creating a New Table Based on an Existing Onep. 343
Renaming Tablesp. 344
Altering a Table's Structurep. 345
Adding Columnsp. 345
Changing Column Datatypesp. 345
Changing NULL Optionsp. 346
Viewsp. 348
Creating a Viewp. 349
Updateable Viewsp. 350
Dropping Viewsp. 351
Top N Analysisp. 352
Creating a View on a Tablep. 353
Other Database Objectsp. 358
Sequencesp. 358
Synonymsp. 362
Chapter 12 Reviewp. 365
On the CD-ROMsp. 370
About Oracle 9i Standard Edition for Windowsp. 370
System Requirementsp. 370
Registering with the Oracle Technology Networkp. 371
Installing Oracle 9i Standard Editionp. 372
Glossaryp. 373
Indexp. 385
Table of Contents provided by Ingram. All Rights Reserved.