Sumário Itens Encontrados: 222Introduction (The Big Picture)Chapter 1: Relational SQLTablesAn Entity-Relationship DiagramData Definition Language (DDL)Itâs Your Turn to Create a TableIndexesDDL AgainItâs Your Turn to Create an IndexConstraintsColumn ConstraintsTable ConstraintsItâs Your Turn to Create a ConstraintTriggersViewsInsertInsert...ValuesItâs Your Turn to Insert with ValuesInsert SelectItâs Your Turn to Insert with SelectUpdateFix a Mistake with UpdateItâs Your Turn to UpdateUpdate and SubqueriesDeleteA Change in OrderItâs Your Turn to DeleteSelectJoinsItâs Your Turn to SelectYour Working ExampleYour Example NarrativeYour Example ERDCreate a Code TableItâs Your Turn to Create Code TablesCreate a Content TableItâs Your Turn to Create Content TablesCreate an Intersection TableItâs Your Turn to Create Intersection TablesChapter 2: Blocks,Functions,and ProceduresBlocksAnonymous BlocksExceptionsCommon ExceptionsCatching an ExceptionFunctionsCreate a FunctionItâs Your Turn to Create a FunctionProceduresCreate a ProcedureItâs Your Turn to Create a ProcedureNested BlocksAn Example of Nesting BlocksRules for NestingPackagesCreate a Package SpecificationItâs Your Turn to Create a Package SpecificationCreate a Package BodyItâs Your Turn to Create a Package BodyBenefits of Using PackagesChapter 3: Types,Variables,and ScopePL/SQL Data TypesVariablesVariable NamingVariable DeclarationsVariable AnchorsVariable AssignmentsNULL ValueItâs Your Turn to Declare VariablesScopeScope RulesItâs Your Turn to Scope Things OutTypesTable TypesRecord TypesMultidimensional ArraysParametersParameter NamingParameter DeclarationsParameter ScopeItâs Your Turn to Declare ParametersChapter 4: Single Row ProcessingInsertsCatching a DUP_VAL_ON_INDEX ExceptionUsing PL/SQL to Predetect a DuplicateIF I Donât Tell You Now,When ELSE Can I?Using SQL to Predetect a DuplicateItâs Your Turn to InsertUpdatesUpdating a RowUsing SQL to Perform Complex UpdatesDeletesSelectsNo Data FoundToo Many RowsChapter 5: Multirow ProcessingCursorsCursor DeclarationsFetching Rows from a Cursor ManuallyCursor RecordsA Singleton CursorItâs Your Turn to Fetch ManuallyFetching Rows from a Cursor AutomaticallyItâs Your Turn to Fetch AutomaticallyBulk CollectBulk Collect with a CursorBulk Collect with a Select StatementItâs Your Turn to Bulk CollectFORALLChapter 6: Object-Relational SQLInformation ModelingObject OrientationKey TenetsReuseService OrientationA Roadmap to RealityStep 1: Table PackagesStep 2: User-Defined TypesStep 3: Object ViewsStep 4: Object TablesObject TypesCreate a User-Defined Type SpecificationCreate a User-Defined Type ImplementationItâs Your Turn to Create a User-Defined TypeObject ViewsCreate an Object ViewItâs Your Turn to Create an Object ViewObject TablesCreate an Object TableItâs Your Turn to Create an Object TableImpedance Mismatch?Nested Types and CollectionsItâs Your Turn to Prove Thereâs No Impedance MismatchChapter 7: TroubleshootingPreventionAnchorsData Type PrefixesExplicit ConversionsPreparationBlockingBread CrumbsAfter the FactSuccess MessagesFailure MessagesItâs Your Turn to Use put_line( )As It HappensA DEBUG TableA DEBUGGER PackageItâs Your Turn to Use Debug LoggingOne Step at a TimeDebugging with Oracle SQL DeveloperDebugging Anonymous PL/SQLDebugging with TOAD for OracleDebugging with Visual StudioItâs Your Turn to Use a DebuggerProfiling PL/SQLProfilerâs TablesProfilerâs MethodsProfiling ReportsItâs Your Turn to ProfileProfiling SQLExplain PlanPhysics vs Explain PlanItâs Your Turn to Use Explain PlanTKPROFChapter 8: TestingSQL Test PatternsPL/SQL Test PatternsA Testing ToolA TEST TableA TEST Package SpecificationA TEST Package BodyItâs Your Turn to Create a Testing ToolTestingTesting a Code Table PackageItâs Your Turn to Test a Code Table PackageTesting a Content Table PackageItâs Your Turn to Test a Content Table PackageTesting an Intersection Table PackageItâs Your Turn to Test an Intersection Table PackageTesting a TypeItâs Your Turn to Test a TypeAutomating TestingAutomate Test ProcessingItâs Your Turn to Automate Test ProcessingChapter 9: DocumentingIndestructible DocumentationSQL*Plus Documentation ToolsGUI Development Environment ToolsRules for Documentation CommentsDocumentation on DemandA Text-Based Documentation Formatting ToolAccessing Documentation on DemandItâs Your Turn to Access Documentation on DemandDistributable DocumentationAn HTML-Based Documentation Formatting ToolGenerating Distributable DocumentationItâs Your Turn to Generate Distributable DocumentationDocumentation DistributionChapter 10: ExamplesPolymorphic CommandsParametric SQLCode Table MethodsContent Table MethodsIntersection Table MethodsHierarchical Table MethodsThe Black BoxTable MethodsUniversal MethodsDivide and ConquerData MigrationOn-Demand Data ProcessingPolling Data ProcessingAppendix A: How to Download,Install,and Use OracleHow to Download Oracle Database SoftwareHow to Install Oracle Database SoftwareHow to Use SQL*PlusHow to Download This Bookâs Source CodeHow to Create a New UsernameHow to Write a SQL*Plus ScriptHow to Execute a SQL*Plus ScriptHow to Describe Your Tables and Stored Procedures