SitemapMain PageTable of contentCopyrightThe Prentice Hall PTR Oracle SeriesAcknowledgmentsAcknowledgments from Ben RosenzweigAcknowledgments from Elena SilvestrovaAbout the AuthorsIntroductionWho This Book Is ForHow This Book Is OrganizedAbout The Companion Web SiteWhat You Will NeedUsing SQL*PlusConventions Used In This BookAbout Prentice Hall Professional Technical ReferenceChapter 1. Programming ConceptsLab 1.1 The Nature of a Computer Program and Programming LanguagesLab 1.1 ExercisesLab 1.1 Exercise AnswersLab 1.1 Self-Review QuestionsLab 1.2 Good Programming PracticesLab 1.2 ExercisesLab 1.2 Exercise AnswersLab 1.2 Self-Review QuestionsChapter 1 Test Your ThinkingChapter 2. PL/SQL ConceptsLab 2.1 PL/SQL in Client-Server ArchitectureLab 2.1 ExercisesLab 2.1 Exercise AnswersLab 2.1 Self-Review QuestionsLab 2.2 PL/SQL in Sql*PlusLab 2.2 ExercisesLab 2.2 Exercise AnswersLab 2.2 Self-Review QuestionsChapter 2 Test Your ThinkingChapter 3. General Programming Language FundamentalsLab 3.1 PL/SQL Programming FundamentalsLab 3.1 ExercisesLab 3.1 Exercise AnswersLab 3.1 Self-Review QuestionsChapter 3 Test Your ThinkingChapter 4. SQL in PL/SQLLab 4.1 Making Use of DML in PL/SQLLab 4.1 ExercisesLab 4.1 Exercise AnswersLab 4.1 Self-Review QuestionsLab 4.2 Making Use of SAVEPOINTLab 4.2 ExercisesLab 4.2 Exercise AnswersLab 4.2 Self-Review QuestionsChapter 4 Test Your ThinkingChapter 5. Conditional Control: IF StatementsLab 5.1 IF StatementsLab 5.1 ExercisesLab 5.1 Exercise AnswersLab 5.1 Self-Review QuestionsLab 5.2 ELSIF StatementsLab 5.2 ExercisesLab 5.2 Exercise AnswersLab 5.2 Self-Review QuestionsLab 5.3 Nested IF StatementsLab 5.3 ExercisesLab 5.3 Exercise AnswersLab 5.3 Self-Review QuestionsChapter 5 Test Your ThinkingChapter 6. Conditional Control: CASE StatementsLAB 6.1 CASE StatementsLab 6.1 ExercisesLab 6.1 Exercise AnswersLab 6.1 Self-Review QuestionsLab 6.2 CASE ExpressionsLab 6.2 ExercisesLab 6.2 Exercise AnswersLab 6.2 Self-Review QuestionsLab 6.3 NULLIF and COALESCE FunctionsLab 6.3 ExercisesLab 6.3 Exercise AnswersLab 6.3 Self-Review QuestionsChapter 6 Test Your ThinkingChapter 7. Error Handling and Built-In ExceptionsLab 7.1 Handling ErrorsLab 7.1 ExercisesLab 7.1 Exercise AnswersLab 7.1 Self-Review QuestionsLab 7.2 Built-In ExceptionsLab 7.2 ExercisesLab 7.2 Exercise AnswersLab 7.2 Self-Review QuestionsChapter 7 Test Your ThinkingChapter 8. Iterative ControlLab 8.1 Simple LoopsLab 8.1 ExercisesLab 8.1 Exercise AnswersLab 8.1 Self-Review QuestionsLab 8.2 WHILE LoopsLab 8.2 ExercisesLab 8.2 Exercise AnswersLab 8.2 Self-Review QuestionsLab 8.3 Numeric FOR LoopsLab 8.3 ExercisesLab 8.3 Exercise AnswersLab 8.3 Self-Review QuestionsLab 8.4 Nested LoopsLab 8.4 ExercisesLab 8.4 Exercise AnswersLab 8.4 Self-Review QuestionsChapter 8 Test Your ThinkingChapter 9. Introduction to CursorsLab 9.1 Cursor ManipulationLab 9.1 ExercisesLab 9.1 Exercise AnswersLab 9.1 Self-Review QuestionsLab 9.2 Using Cursor FOR Loops and Nesting CursorsLab 9.2 ExercisesLab 9.2 Exercise AnswersLab 9.2 Self-Review QuestionsChapter 9 Test Your ThinkingChapter 10. ExceptionsLab 10.1 Exception ScopeLab 10.1 ExercisesLab 10.1 Exercise AnswersLab 10.1 Self-Review QuestionsLab 10.2 User-Defined ExceptionsLab 10.2 ExercisesLab 10.2 Exercise AnswersLab 10.2 Self-Review QuestionsLab 10.3 Exception PropagationLab 10.3 ExercisesLab 10.3 Exercise AnswersLab 10.3 Self-Review QuestionsChapter 10 Test Your ThinkingChapter 11. Exceptions: Advanced ConceptsLab 11.1 RAISE_APPLICATION_ERRORLab 11.1 ExercisesLab 11.1 Exercise AnswersLab 11.1 Self-Review QuestionsLab 11.2 EXCEPTION_INIT PragmaLab 11.2 ExercisesLab 11.2 Exercise AnswersLab 11.2 Self-Review QuestionsLab 11.3 SQLCODE and SQLERRMLab 11.3 ExercisesLab 11.3 Exercise AnswersLab 11.3 Self-Review QuestionsChapter 11 Test Your ThinkingChapter 12. ProceduresPL/SQL Stored CodeLab 12.1 Creating ProceduresLab 12.1 ExercisesLab 12.1 Exercise AnswersLab 12.2 Passing Parameters In and Out of ProceduresLab 12.2 Passing Parameters In and Out of ProceduresLab 12.2 ExercisesLab 12.2 Exercise AnswersLab 12.2 Self-Review QuestionsChapter 12 Test Your ThinkingChapter 13. FunctionsLab 13.1 Creating and Using FunctionsLab 13.1 ExercisesLab 13.1 Exercise AnswersLab 13.1 Self-Review QuestionsChapter 13 Test Your ThinkingChapter 14. PackagesLab 14.1 The Benefits of Utilizing PackagesLab 14.1 ExercisesLab 14.1 Exercise AnswersLab 14.1 Self-Review QuestionsChapter 14 Test Your ThinkingChapter 15. Advanced CursorsLab 15.1 Using Parameters with Cursors and FOR UPDATE CursorsLab 15.1 Using Parameters with Cursors and FOR UPDATE CursorsLab 15.1 ExercisesLab 15.1 Exercise AnswersLab 15.2 Cursor VariablesLab 15.2 ExercisesLab 15.2 Exercise AnswersLab 15.2 Self-Review QuestionsChapter 16. Stored CodeLab 16.1 Gathering Stored Code InformationLab 16.1 ExercisesLab 16.1 Exercise AnswersLab 16.1 Self-Review QuestionsChapter 16 Test Your ThinkingChapter 17. TriggersLab 17.1 What Triggers AreLab 17.1 ExercisesLab 17.1 Exercise AnswersLab 17.1 Self-Review QuestionsLab 17.2 Types of TriggersLab 17.2 ExercisesLab 17.2 Exercise AnswersLab 17.2 Self-Review QuestionsLab 17.3 Mutating Table IssuesLab 17.3 ExercisesLab 17.3 Exercise AnswersLab 17.3 Self-Review QuestionsChapter 17 Test Your ThinkingChapter 18. CollectionsLab 18.1 PL/SQL TablesLab 18.1 ExercisesLab 18.1 Exercise AnswersLab 18.1 Self-Review QuestionsLab 18.2 VarraysLab 18.2 ExercisesLab 18.2 Exercise AnswersLab 18.2 Self-Review QuestionsLab 18.3 Multilevel CollectionsLab 18.3 ExercisesLab 18.3 Exercise AnswersLab 18.3 Self-Review QuestionsChapter 18 Test Your ThinkingChapter 19. RecordsLab 19.1 RecordsLab 19.1 ExercisesLab 19.1 Exercise AnswersLab 19.1 Self-Review QuestionsLab 19.2 Nested RecordsLab 19.2 ExercisesLab 19.2 Exercise AnswersLab 19.2 Self-Review QuestionsLab 19.3 Collections of RecordsLab 19.3 ExercisesLab 19.3 Exercise AnswersLab 19.3 Self-Review QuestionsChapter 19 Test Your ThinkingChapter 20. Native Dynamic SQLLab 20.1 EXECUTE IMMEDIATE StatementsLab 20.1 ExercisesLab 20.1 Exercise AnswersLab 20.1 Self-Review QuestionsLab 20.2 OPEN-FOR, FETCH, and CLOSE STATEMENTSLab 20.2 ExercisesLab 20.2 Exercise AnswersLab 20.2 Self-Review QuestionsChapter 20 Test Your ThinkingChapter 21. Oracle Supplied PackagesLab 21.1 Make Use of Oracle Supplied PackagesLab 21.1 ExercisesLab 21.1 Exercise AnswersAppendix A. Answers to Self-Review QuestionsChapter 1 Programming ConceptsChapter 2 PL/SQL ConceptsChapter 3 General Programming Language FundamentalsChapter 4 SQL in PL/SQLChapter 5 Conditional Control: IF StatementsChapter 6 Conditional Control: CASE StatementsChapter 7 Error Handling and Built-In ExceptionsChapter 8 Iterative ControlChapter 9 Introduction to CursorsChapter 10 ExceptionsChapter 11 Exceptions: Advanced ConceptsChapter 12 ProceduresChapter 13 FunctionsChapter 14 PackagesChapter 15 Advanced CursorsChapter 16 Stored CodeChapter 17 TriggersChapter 18 CollectionsChapter 19 RecordsChapter 20 Native Dynamic SQLAppendix B. PL/SQL Formatting GuidePL/SQL Code Naming Conventions and Formatting GuidelinesOther SuggestionsAppendix C. Student Database SchemaTable and Column DescriptionsAppendix D. Answers to Test Your Thinking SectionsChapter 1 Programming ConceptsChapter 2 PL/SQL ConceptsChapter 3 General Programming Language FundamentalsChapter 4 SQL in PLSQLChapter 5 Conditional Control: IF StatementsChapter 6 Conditional Control: CASE StatementsChapter 7 Error Handling and Built-In ExceptionsChapter 8 Iterative ControlChapter 9 Introduction to CursorsChapter 10 ExceptionsChapter 11 Exceptions: Advanced ConceptsChapter 12 ProceduresChapter 13 FunctionsChapter 14 PackagesChapter 16 Stored CodeChapter 17 TriggersChapter 18 CollectionsChapter 19 RecordsChapter 20 Native Dynamic SQLAppendix E. ANSI SQL StandardsSQL StandardsJOINsScalar Subquery