Muutke küpsiste eelistusi

E-raamat: Real World SQL and PL/SQL: Advice from the Experts

  • Formaat: 736 pages
  • Ilmumisaeg: 22-Aug-2016
  • Kirjastus: McGraw-Hill Education
  • Keel: eng
  • ISBN-13: 9781259640988
Teised raamatud teemal:
  • Formaat - EPUB+DRM
  • Hind: 68,33 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: 736 pages
  • Ilmumisaeg: 22-Aug-2016
  • Kirjastus: McGraw-Hill Education
  • Keel: eng
  • ISBN-13: 9781259640988
Teised raamatud teemal:

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Publisher's Note: Products purchased from Third Party sellers are not guaranteed by the publisher for quality, authenticity, or access to any online entitlements included with the product.







Master the Underutilized Advanced Features of SQL and PL/SQL

This hands-on guide from Oracle Press shows how to fully exploit lesser known but extremely useful SQL and PL/SQL featuresand how to effectively use both languages together. Written by a team of Oracle ACE Directors, Real-World SQL and PL/SQL: Advice from the Experts features best practices, detailed examples, and insider tips that clearly demonstrate how to write, troubleshoot, and implement code for a wide variety of practical applications. The book thoroughly explains underutilized SQL and PL/SQL functions and lays out essential development strategies. Data modeling, advanced analytics, database security, secure coding, and administration are covered in complete detail.

Learn how to:

 Apply advanced SQL and PL/SQL tools and techniques  Understand SQL and PL/SQL functionality and determine when to use which language  Develop accurate data models and implement business logic  Run PL/SQL in SQL and integrate complex datasets  Handle PL/SQL instrumenting and profiling  Use Oracle Advanced Analytics and Oracle R Enterprise  Build and execute predictive queries  Secure your data using encryption, hashing, redaction, and masking  Defend against SQL injection and other code-based attacks  Work with Oracle Virtual Private Database

Code examples in the book are available for download at www.MHProfessional.com.

TAG: For a complete list of Oracle Press titles, visit www.OraclePressBooks.com

 
Foreword xvii
Preface xxi
Acknowledgments xxiii
Introduction xxv
Part I The Importance of SQL, PL/SQL, and a Good Data Model
1 SQL and PL/SQL
3(8)
Introduction to SQL and PUSQL
4(1)
SQL
4(5)
PUSQL
9(1)
Summary
10(1)
2 Expert Data Modeling and Implementing Business Logic
11(20)
Implementing Business Logic
12(2)
Business Logic in Database Objects
12(1)
Business Logic in the Code
13(1)
Designing a Database and Data Models
14(13)
The Design Process
14(6)
Introduction to Oracle SQL Developer Data Modeler
20(7)
Summary
27(4)
Part II Underutilized Advanced SQL Functionality
3 Handling Advanced and Complex Data Sets
31(62)
Some Tools for Designing the Database
32(35)
Introduction to Tables
32(8)
Table Cluster
40(1)
Views and Materialized Views
41(4)
Introduction to Data Types
45(13)
Invisible Columns
58(2)
Virtual Columns
60(1)
Attribute Clustering
61(3)
Partitioning
64(2)
Constraints
66(1)
Some Tools for Implementing SQL and PL/SQL Requirements
67(23)
Cursors
68(3)
Records
71(3)
Collections
74(13)
Parallel Query
87(1)
Table Functions and Pipelined Table Functions
88(2)
Summary
90(3)
4 Regular Expressions
93(28)
Basic Search and Escape Possibilities
94(2)
REGEXP Functions
96(7)
Character Classes
103(5)
Greediness and Negating the Expression
103(2)
Backreferences
105(2)
Check Constraints
107(1)
Real-World Examples
108(6)
Breaking Up a Delimited String
108(3)
Sorting by the Numeric Part of a String
111(3)
Pattern Matching: MATCH_RECOGNIZE
114(5)
Summary
119(2)
5 Edition-Based Redefinition
121(44)
Planned Downtime
122(1)
Terminology Used
122(1)
The Concept
123(3)
Preparation: Enable Editions
126(4)
NE on E Prohibition
126(3)
Creating a New Edition
129(1)
Complexity Levels
130(21)
Replacing PL/SQL Code
130(4)
Changing Table Structures
134(5)
Keeping the Data in Sync Between Editions
139(10)
Lost Update
149(2)
Retiring the Old Edition
151(3)
To Drop or Not to Drop?
152(1)
Changing the Default Edition
153(1)
SQL Developer and EBR
154(4)
EBR and DBMS_REDACT
158(2)
Summary
160(5)
Part III Essential Everyday Advanced PL/SQL
6 Running PL/SQL from SQL
165(54)
SQL and PUSQL Functions
166(12)
STANDARD and DBMS_STANDARD
167(4)
Simplifying Nested SQL Functions with PUSQL
171(7)
PUSQL Function Considerations
178(39)
Parameters, Purity Levels, and Deterministic
178(6)
Context Switching Overhead
184(19)
Loss of Point-in-Time View
203(3)
PUSQL Results Caching
206(10)
Correct Implementation for the DISP_NAME Functionality
216(1)
Summary
217(2)
7 Instrumenting and Profiling PL/SQL
219(88)
SQL and RDBMS Instrumentation
222(1)
Instrumentation Overhead
222(1)
Instrumentation Is Built In by the Developer but Sometimes Seen Only by the DBA
223(1)
Instrumentation for Debugging
223(1)
The Difference Between Instrumentation, Profiling, and Debugging
224(2)
Instrumentation
224(1)
Profiling
225(1)
Debugging
226(1)
Instrumentation of PUSQL
226(36)
DBMS_OUTPUT
226(14)
Logging Tables
240(9)
DBMS_APPLICATION_INFO
249(12)
Overview of Instrumentation Options
261(1)
Instrumentation Packages
261(1)
Profiling
262(42)
Drawbacks of Profiling Production Code with DBMS_OUPUT
262(1)
Using the PLSQL_LOG Table
263(4)
A Real-World Example of the Power of Instrumentation
267(1)
Profiling and Debugging Packages
268(35)
Overview of the Profiling Options
303(1)
Summary
304(3)
8 Dynamic SQL
307(16)
Using Native Dynamic SQL
308(4)
Using the DBMS_SQL Package
312(9)
Returning a Result Set to the Client
313(2)
Calling an Implicit Result Set from PUSQL
315(1)
The DBMS_SQL.TO_REFCURSOR Function
316(2)
The DBMS_SQL.TO_CURSOR_NUMBER Function
318(3)
Summary
321(2)
9 PL/SQL for Automation and Administration
323(76)
PUSQL and the DBA
325(1)
Simple Task-Specific PUSQL Scripts
325(9)
Investigating LONGS with PL/SQL
326(1)
Complex SQL or Simple PUSQL: Identifying SQL with Identical Execution Plans
327(2)
A Lightweight Tool for Gathering and Preserving Session Stats
329(3)
Handling Database Statistics Rapidly Becoming Stale
332(1)
A Flexible Emergency Backup Script via PUSQL
332(2)
Controlling Administrative and Batch Tasks with PUSQL
334(32)
The Core Master-Detail Control Tables
335(10)
Logging and Error Tables
345(21)
Process-Specific Tables
366(1)
PUSQL Packages for Aiding Database Developers and Administration
366(30)
Built-in PUSQL Packages Covered Elsewhere in This Book
367(1)
DBMS_WORKLOAD_REPOSITORY
367(8)
DBMS_METADATA
375(10)
UTL_FILE
385(1)
DBMS_UTILITY
386(10)
Summary
396(3)
Part IV Advanced Analytics
10 In-Database Data Mining Using Oracle Data Mining
399(40)
Overview of Oracle Advanced Analytics Option
400(1)
Oracle Data Miner GUI Tool
401(4)
Setting Up Oracle Data Miner and the Demo Data Sets
403(1)
Creating an Oracle Data Miner Workflow
404(1)
Oracle Data Mining Using SQL and PUSQL
405(4)
Oracle Data Mining PUSQL API
407(1)
Oracle Data Mining SQL Functions
407(2)
Classification Using Oracle Data Mining
409(28)
Preparing Your Data
410(11)
Building the Classification Model
421(7)
Evaluating the Classification Model
428(5)
Applying the Classification Model to New Data
433(4)
Oracle Data Mining: Other Techniques
437(1)
Summary
438(1)
11 Oracle R Enterprise
439(34)
The ORE Transparency Layer
440(1)
Installing Oracle R Enterprise
441(7)
Installation Prerequisites
442(1)
Server Installation
442(3)
Client Installation
445(3)
Using Oracle Pre-Built Appliances
448(1)
Getting Started and Connecting to the Oracle Database
448(4)
Exploring Your Data Using ORE
452(6)
Building Data Mining Models Using ORE
458(6)
Association Rule Analysis
458(3)
Building a Decision Tree Model and Scoring New Data
461(3)
Building a Neural Network Model and Scoring New Data
464(1)
Embedded R Execution
464(8)
Using rqEval to Call Functions and Return a Data Set
465(2)
Using rqTableEval to Apply a Data Mining Model to Your Data
467(3)
Creating and Using ORE Graphics in Your Dashboards
470(2)
Summary
472(1)
12 Predictive Queries in Oracle 12c
473(22)
What Are Predictive Queries and Why Do You Need Them?
474(4)
Oracle Analytic Functions
475(1)
The Magic of the Partitioning Clause
476(2)
Creating Predictive Queries
478(4)
Creating Predictive Queries in SQL Developer
478(1)
Creating Predictive Queries in Oracle Data Miner
478(4)
Predictive Queries Using SQL
482(10)
Classification Using Predictive Queries
483(2)
Regression Using Predictive Queries
485(2)
Anomaly Detection Using Predictive Queries
487(3)
Clustering Using Predictive Queries
490(2)
Working with Predictive Queries
492(1)
Summary
492(3)
Part V Database Security
13 Redaction and Masking
495(30)
Why Redaction?
496(2)
PUSQL-Only Solution for Redaction
498(8)
Randomization
498(5)
The View for Redaction
503(3)
Cleanup
506(1)
Redaction and Masking Pack
506(17)
Fixed Values
509(1)
Other Types of Redaction
510(10)
SQL Developer Access
520(1)
Policy Administration
521(1)
Cleanup
522(1)
Summary
523(2)
14 Encryption and Hashing
525(56)
What Is Encryption?
526(1)
Introduction to Encryption
527(24)
Encryption Components
528(1)
The Effect of Key Length
528(1)
Symmetric vs. Asymmetric Encryption
529(2)
Encryption Algorithms
531(1)
Padding and Chaining
532(1)
The Crypto Package
532(8)
Decrypting Data
540(2)
Initialization Vector or Salt
542(2)
Key Management
544(6)
Protecting the Data from the DBA
550(1)
Encrypting RAW Data
551(1)
A Complete Encryption Solution
551(2)
Option 1: Alter the Table
552(1)
Option 2: Encrypt the Columns Themselves, and Use the View to Show the Decrypted Data
552(1)
Store the Keys Separate from the Table
553(1)
Storing the Keys
553(1)
Transparent Data Encryption
553(6)
Setting Up TDE
555(1)
Adding TDE to Existing Tables
556(1)
Tablespace TDE
556(2)
Performing TDE Key and Password Management
558(1)
Adding Salt
558(1)
Cryptographic Hashing
559(4)
The Case of the Suspicious Sandwich
559(1)
Hashing with PUSQL
560(3)
Other Uses of Hashing
563(1)
Message Authentication Code
563(3)
Putting It All Together: A Project
566(8)
Option 1
566(1)
Option 2
567(7)
Quick Reference
574(5)
GETRANDOMBYTES
574(1)
ENCRYPT
574(1)
DECRYPT
575(2)
HASH
577(1)
MAC
578(1)
Summary
579(2)
15 SQL Injection and Code Security
581(40)
Execution Models
582(8)
Program Security
590(5)
The Traditional Approach
591(2)
Role-Based Program Security
593(2)
Code Whitelisting
595(3)
Restricting Inherited Privilege
598(4)
PUSQL Injection Attacks
602(18)
Sanitization of the Input String
605(13)
Reducing SQL Injection Possibilities
618(2)
Summary
620(1)
16 Fine Grained Access Control and Application Contexts
621(56)
Introduction to Fine Grained Access Control
622(4)
Virtual Private Database
626(1)
Why Learn about VPD?
627(1)
A Simple Example
628(3)
Intermediate VPD
631(14)
Performing an Update Check
631(2)
Static vs. Dynamic Policies
633(12)
Improving Performance
645(10)
Controlling the Type of Table Access
648(4)
Column-Sensitive VPD
652(3)
Other Classes of Dynamism
655(3)
Shared Static Policy
656(1)
Context-Sensitive Policy
657(1)
Shared Context-Sensitive Policy
658(1)
Troubleshooting
658(3)
ORA-28110: Policy Function or Package Has Error
658(1)
ORA-28112: Failed to Execute Policy Function
658(1)
ORA-28113: Policy Predicate Has Error
659(1)
Direct-Path Operations
659(1)
Checking the Query Rewrite
660(1)
Interactions with Other Oracle Features
661(2)
Referential Integrity Constraints
661(1)
Replication
662(1)
Materialized Views
662(1)
Application Contexts
663(10)
A Simple Example
664(1)
The Security in Application Contexts
665(1)
Contexts as Predicates in VPD
666(4)
Identifying Nondatabase Users
670(3)
Clean Up
673(1)
Quick Reference
673(3)
Package DBMS_RLS
673(2)
Data Dictionary Views
675(1)
Summary
676(1)
Index 677
Brendan Tierney, Oracle ACE Director, is an independent consultant and lectures on Data Mining and Advanced Databases in the Dublin Institute of Technology in Ireland. He is an Oracle ACE Director and has extensive experience working in the areas of Data Mining, Data Warehousing, Data Architecture and Database Design. Brendan has worked on projects in Ireland, UK, Belgium and USA and has been working with the Oracle database and tools since 1992. Brendan is the editor of the UKOUG Oracle Scene magazine and deputy chair of the OUG Ireland BI SIG. Brendan is a regular speaker at conferences across Europe and the USA, including Oracle Open World. In addition to his presentations Brendan has written technical articles for OTN, Oracle Scene, IOUG SELECT Journal and ODTUG Technical Journal.  He is author of the Oracle Press book titled, Predictive Analytics using Oracle Data Miner.





Heli Helskyaho has a masters degree in computer science from Helsinki University and specializes in databases. Heli is also an Oracle ACE director and has been a frequent speaker at many conferences. She has worked in IT since 1990 and with Oracle products since 1993. She has been in several positions, but each role has always included database design. Heli has been an Oracle Designer user since 1996 and a Oracle SQL Developer Data Modeler user since 2010. Heli is an active member in Oracle user groups community, including Oracle User Group Finland as well as EMEA Oracle user groups community (EOUC) where she has served as their spokesperson/ambassador since 2007. Heli is also the CEO for Miracle Finland Oy. Heli believes that creating good database design and documentation reduces performance problems and makes solving them easier. You can follow her on Twitter @helifromfinland or read her blog on helifromfinland.wordpress.com.





Martin Widlake  is an independent Oracle consultant, specialising in database performance, PL/SQL development and VLDBs. He has been working with Oracle technologies for over two decades and shares his experience & knowledge when presenting at conferences and user groups several times a year, both across the UK and internationally. Martin is an Oracle ACE and also a proud member of the Oak Table Network.