Home > General > Oracle Advanced PL/SQL Developer Professional Guide
10%
Oracle Advanced PL/SQL Developer Professional Guide

Oracle Advanced PL/SQL Developer Professional Guide

          
5
4
3
2
1

Out of Stock


Premium quality
Premium quality
Bookswagon upholds the quality by delivering untarnished books. Quality, services and satisfaction are everything for us!
Easy Return
Easy return
Not satisfied with this product! Keep it in original condition and packaging to avail easy return policy.
Certified product
Certified product
First impression is the last impression! Address the book’s certification page, ISBN, publisher’s name, copyright page and print quality.
Secure Checkout
Secure checkout
Security at its finest! Login, browse, purchase and pay, every step is safe and secured.
Money back guarantee
Money-back guarantee:
It’s all about customers! For any kind of bad experience with the product, get your actual amount back after returning the product.
On time delivery
On-time delivery
At your doorstep on time! Get this book delivered without any delay.
Notify me when this book is in stock
Add to Wishlist

About the Book

What you will learn from this book Get to grips with using Advanced Interface Methods Learn to implement VPD with Fine Grained Access Control Make use of Collections and learn data caching techniques in PL/SQL programs Protect PL/SQL code from injection attacks Learn to use Result caching to tune PL/SQL code Demonstrate tracing and profiling features in PL/SQL Get started with SecureFiles for advanced storage options PL/SQL (Procedural Language/Structured Query Language) is Oracle Corporation's procedural extension language for SQL and the Oracle relational database. Server-side PL/SQL is stored and compiled in the Oracle Database and runs within the Oracle executable. With this guide Oracle developers can work towards accomplishing Oracle 11g Advanced PL/SQL Professional certification, which is the second milestone for developers working at the Associate level. The Oracle Advanced PL/SQL Developer Professional Guide helps you master advanced PL/SQL concepts. Besides the clear and precise explanation on advanced topics, it also contains example code and demonstrations, which gives a sense of application and usage to readers. The book gives a deep insight that will help transform readers from mid-level programmers to professional database developers. It aims to cover the advanced features of PL/SQL for designing and optimizing PL/SQL code. This book starts with an overview of PL/SQL as the programming database language and outlines the benefits and characteristics of the language. The book then covers the advanced features that include PL/SQL code writing using collections, tuning recommendations using result caching, implementing VPD to enforce row level security, and much more. Apart from programming, the book also dives deep into the usage of the development tool SQL Developer, employing best practices in database environments and safeguarding the vulnerable areas in PL/SQL code to avoid code injection. Approach This book is packed with real world examples that cover all the advanced features of PL/SQL. In turn, each major certification topic is covered in a separate chapter that makes understanding concepts easier. At the end of each chapter, you will find plenty of practice questions to strengthen and test your learning. Who this book is for If you are a PL/SQL developer looking for deeper insight and a move from mid-level programmer to professional database developer, then this is the best guide for you. This book is also an ideal guide for all the Associate level PL/SQL programmers who are preparing for the Professional 1Z0-146 certification. This book assumes you have prior knowledge of PL/SQL programming. About the Author Since the time Saurabh Gupta was introduced to Oracle database by chance and not by choice, he has been synchronizing his on job and off job interests with Oracle database programming. As an Oracle 11g Certified Advanced PL/SQL Professional, he soon moved from programming to database designing, development, and administration. During the phase when he specialized in database modelling, development and tuning, he was an active Oracle blogger and OTN forum member. To date, he has authored more than 70 online articles and papers. His works can be noted at RMOUG SQL> date journal, PSOUG (http://www.psoug.org), DBANOTES (http://www.dbanotes.com), EXFORSYS (http://www.exforsys.com), and CLUB-ORACLE (http://www.club-oracle.com). He shares his technical encounters in Oracle technologies on his own blogging venture http://sbhoracle.wordpress.com/. He is an AIOUG (All India Oracle Users Gro) member and loves to participate in technical meets and conferences. Besides digging into Oracle, sketching and snooker are other past times for him. One can reach him through his blog SbhOracle for any comments, suggestions or feedback regarding this book. Table of Contents Preface Chapter 1: Overview of PL/SQL Programming Concepts PL/SQL—the procedural aspect My first PL/SQL program PL/SQL development environments SQL Developer SQL Developer—the history Creating a connection SQL Worksheet Executing a SQL statement Calling a SQL script from SQL Developer Creating and executing an anonymous PL/SQL block Debugging the PL/SQL code Editing and saving the scripts SQL*Plus Executing a SQL statement in SQL*Plus Executing an anonymous PL/SQL block Procedures Executing a procedure Functions Function—execution methods Restrictions on calling functions from SQL expressions PL/SQL packages Cursors—an overview Cursor execution cycle Cursor attributes Cursor FOR loop Exception handling in PL/SQL System-defined exceptions User-defined exceptions The RAISE_APPLICATION_ERROR procedure Exception propagation Managing database dependencies Displaying the direct and indirect dependencies Dependency metadata Dependency issues and enhancements Reviewing Oracle-splied packages Summary Practice exercise Chapter 2: Designing PL/SQL Code Understanding cursor structures Cursor execution cycle Cursor design considerations Cursor design—guidelines Cursor attributes Implicit cursors Explicit cursors Cursor variables Ref cursor types—strong and weak SYS_REFCURSOR Processing a cursor variable Cursor variables as arguments Cursor variables—restrictions Subtypes Subtype classification Oracle's predefined subtypes User-defined subtypes Type compatibility with subtypes Summary Practice exercise Chapter 3: Using Collections Collections—an overview Categorization Selecting an appropriate collection type Associative arrays Nested tables Nested table collection type as the database object DML operations on nested table columns A nested table collection type in PL/SQL Additional features of a nested table Varray Varray in PL/SQL Varray as a database collection type DML operations on varray type columns Collections—a comparative study Common characteristics of collection types Nested table versus associative arrays Nested table versus varrays PL/SQL collection methods EXISTS COUNT LIMIT FIRST and LAST PRIOR and NEXT EXTEND TRIM DELETE Manipulating collection elements Collection initialization Summary Practice exercise Chapter 4: Using Advanced Interface Methods Understanding external routines Architecture of external routines Oracle Net Configuration TNSNAMES.ora LISTENER.ora Oracle Net Configuration verification Benefits of external procedures Executing external C programs from PL/SQL Executing C program through external procedure—development steps Executing Java programs from PL/SQL Calling a Java class method from PL/SQL loading a Java class into the database—development steps The loadjava utility—an illustration Creating packages for Java class methods Summary Practice exercise Chapter 5: Implementing VPD with Fine Grained Access Control Fine Grained Access Control Overview Virtual Private Database—the alias How FGAC or VPD works? Salient features of VPD VPD implementation—outline and components Application context Policy function definition and implementation of row-level security Associating a policy using the DBMS_RLS package VPD implementation—demonstrations Assignment 1—implementing VPD using simple security policy Assignment 2—implementing VPD using an application context VPD policy metadata Policy utilities—refresh and drop Summary Practice exercise Chapter 6: Working with Large Objects Introduction to the LOB data types Internal LOB External LOB Understanding the LOB data types LOB value and LOB locators BLOB or CLOB! BFILE Temporary LOBs Creating LOB data types Directories Creating LOB data type columns in a table Managing LOB data types Managing internal LOBs Securing and managing BFILEs The DBMS_LOB package—overview Security model DBMS_LOB constants DBMS_LOB data types DBMS_LOB subprograms Rules and regulations Working with the CLOB, BLOB, and BFILE data types Initializing LOB data type columns Inserting data into a LOB column Populating a LOB data type using an external file Selecting LOB data Modifying the LOB data Delete LOB data Miscellaneous LOB notes LOB column states Locking a row containing LOB Opening and closing LOBs Accessing LOBs LOB restrictions Migrating from LONG to LOB Using temporary LOBs Temporary LOB operations Managing temporary LOBs Validating, creating, and freeing a temporary LOB Summary Practice exercise Chapter 7: Using SecureFile LOBs Introduction to SecureFiles SecureFile LOB—an overview Architectural enhancements in SecureFiles SecureFile LOB features Working with SecureFiles SecureFile metadata Enabling advanced features in SecureFiles Dedlication Compression Encryption Migration from BasicFiles to SecureFiles Online Redefinition method Summary Practice exercise Chapter 8: Compiling and Tuning to Improve Performance Native and interpreted compilation techniques Real native compilation Selecting the appropriate compilation mode When to choose interpreted compilation mode? When to choose native compilation mode? Setting the compilation mode Querying the compilation settings Compiling a program unit for a native or interpreted compilation Compiling the database for PL/SQL native compilation (NCOMP) Tuning PL/SQL code Comparing SQL and PL/SQL Avoiding implicit data type conversion Understanding the NOT NULL constraint Using the PLS_INTEGER data type for arithmetic operations Using a SIMPLE_INTEGER data type Modularizing the PL/SQL code Using bulk binding Using SAVE_EXCEPTIONS Rephrasing the conditional control statements Conditions with an OR logical operator Conditions with an AND logical operator Enabling intra unit inlining PLSQL_OPTIMIZE_LEVEL—the Oracle initialization parameter Case 1—PLSQL_OPTIMIZE_LEVEL = 0 Case 2—PLSQL_OPTIMIZE_LEVEL = 1 Case 3—PLSQL_OPTIMIZE_LEVEL = 2 Case 4—PLSQL_OPTIMIZE_LEVEL = 3 PRAGMA INLINE Summary Practice exercise Chapter 9: Caching to Improve Performance Introduction to result cache Server-side result cache SQL query result cache PL/SQL function result cache OCI client results cache Configuring the database for the server result cache The DBMS_RESULT_CACHE package Implementing the result cache in SQL Manual result cache Automatic result cache Result cache metadata Query result cache dependencies Cache memory statistics Invalidation of SQL result cache Displaying the result cache memory report Read consistency of the SQL result cache Limitation of SQL result cache Implementing result cache in PL/SQL The RESULT_CACHE clause Cross-session availability of cached results Invalidation of PL/SQL result cache Limitations of PL/SQL function result cache Argument and return type restrictions Function structural restrictions Summary Practice exercise Chapter 10: Analyzing PL/SQL Code Track coding information [DBA | ALL | USER]_ARGUMENTS [DBA | ALL | USER]_OBJECTS [DBA | ALL | USER]_SOURCE [DBA | ALL | USER]_PROCEDURES [DBA | ALL | USER]_DEPENDENCIES Using SQL Developer to find coding information The DBMS_DESCRIBE package DBMS_UTILITY.FORMAT_CALL_STACK Tracking propagating exceptions in PL/SQL code Determining identifier types and usages The PL/Scope tool The PL/Scope identifier collection The PL/Scope report Illustration Applications of the PL/Scope report The DBMS_METADATA package DBMS_METADATA data types and subprograms Parameter requirements The DBMS_METADATA transformation parameters and filters Working with DBMS_METADATA—illustrations Case 1—retrieve the metadata of a single object Case 2—retrieve the object dependencies on the F_GET_LOC function Case 3—retrieve system grants on the ORADEV schema Case 4—retrieve objects of function type in the ORADEV schema Summary Practice exercise Chapter 11: Profiling and Tracing PL/SQL Code Tracing the PL/SQL programs The DBMS_TRACE package Installing DBMS_TRACE DBMS_TRACE subprograms The PLSQL_DEBUG parameter and the DEBUG option Viewing the PL/SQL trace information Demonstrating the PL/SQL tracing Profiling the PL/SQL programs Oracle hierarchical profiler—the DBMS_HPROF package View profiler information Demonstrating the profiling of a PL/SQL program The plshprof utility Sample reports Summary Practice exercise Chapter 12: Safeguarding PL/SQL Code against SQL Injection Attacks SQL injection—an introduction SQL injection—an overview Types of SQL injection attacks Preventing SQL injection attacks Immunizing SQL injection attacks Reducing the attack's surface Controlling user privileges Invoker's and definer's rights Avoiding dynamic SQL Bind arguments Sanitizing inputs using DBMS_ASSERT The DBMS_ASSERT package Testing the code for SQL injection flaws Test strategy Reviewing the code Static code analysis Fuzz tools Generating test cases Summary Practice exercise Appendix: Answers to Practice Questions Chapter 1, Overview of PL/SQL Programming Concepts Chapter 2, Designing PL/SQL Code Chapter 3, Using Collections Chapter 4, Using Advanced Interface Methods Chapter 5, Implementing VPD with Fine Grained Access Control Chapter 6, Working with Large Objects Chapter 7, Using SecureFile LOBs Chapter 8, Compiling and Tuning to Improve Performance Chapter 9, Caching to Improve Performance Chapter 10, Analyzing PL/SQL Code Chapter 11, Profiling and Tracing PL/SQL Code Chapter 12, Safeguarding PL/SQL Code against SQL Injection Attacks Index


Best Sellers



Product Details
  • ISBN-13: 9789350237946
  • Binding: Paperback
  • ISBN-10: 9350237946
  • Language: English

Related Categories

Similar Products

How would you rate your experience shopping for books on Bookswagon?

Add Photo
Add Photo

Customer Reviews

REVIEWS           
Click Here To Be The First to Review this Product
Oracle Advanced PL/SQL Developer Professional Guide
-
Oracle Advanced PL/SQL Developer Professional Guide
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Oracle Advanced PL/SQL Developer Professional Guide

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book
    Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals



    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!