Duration 3 Days 18 CPD hours This course is intended for This is an introductory- level course appropriate for those who are developing applications using relational databases, or who are using SQL to extract and analyze data from databases and need to use the full power of SQL queries. Overview This course combines expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Working in a hands-on learning environment led by our expert practitioner, attendees will learn to: Maximize the potential of SQL to build powerful, complex and robust SQL queries Query multiple tables with inner joins, outer joins and self joins Construct recursive common table expressions Summarize data using aggregation and grouping Execute analytic functions to calculate ranks Build simple and correlated subqueries Thoroughly test SQL queries to avoid common errors Select the most efficient solution to complex SQL problems A company?s success hinges on responsible, accurate database management. Organizations rely on highly available data to complete all sorts of tasks, from creating marketing reports and invoicing customers to setting financial goals. Data professionals like analysts, developers and architects are tasked with creating, optimizing, managing and analyzing data from databases ? with little room for error. When databases aren?t built or maintained correctly, it?s easy to mishandle or lose valuable data. Our SQL Programming and Database Training Series provides students with the skills they require to develop, analyze and maintain data and in correctly structured, modern and secure databases. SQL is the cornerstone of all relational database operations. In this hands-on course, you learn to exploit the full potential of the SELECT statement to write robust queries using the best query method for your application, test your queries, and avoid common errors and pitfalls. It also teaches alternative solutions to given problems, enabling you to choose the most efficient solution in each situation. Introduction: Quick Tools Review Introduction to SQL and its development environments Using SQL*PLUS Using SQL Developer Using the SQL SELECT Statement Capabilities of the SELECT statement Arithmetic expressions and NULL values in the SELECT statement Column aliases Use of concatenation operator, literal character strings, alternative quote operator, and the DISTINCT keyword Use of the DESCRIBE command Restricting and Sorting Data Limiting the Rows Rules of precedence for operators in an expression Substitution Variables Using the DEFINE and VERIFY command Single-Row Functions Describe the differences between single row and multiple row functions Manipulate strings with character function in the SELECT and WHERE clauses Manipulate numbers with the ROUND, TRUNC and MOD functions Perform arithmetic with date data Manipulate dates with the date functions Conversion Functions and Expressions Describe implicit and explicit data type conversion Use the TO_CHAR, TO_NUMBER, and TO_DATE conversion functions Nest multiple functions Apply the NVL, NULLIF, and COALESCE functions to data Decode/Case Statements Using the Group Functions and Aggregated Data Group Functions Creating Groups of Data Having Clause Cube/Rollup Clause SQL Joins and Join Types Introduction to JOINS Types of Joins Natural join Self-join Non equijoins OUTER join Using Subqueries Introduction to Subqueries Single Row Subqueries Multiple Row Subqueries Using the SET Operators Set Operators UNION and UNION ALL operator INTERSECT operator MINUS operator Matching the SELECT statements Using Data Manipulation Language (DML) statements Data Manipulation Language Database Transactions Insert Update Delete Merge Using Data Definition Language (DDL) Data Definition Language Create Alter Drop Data Dictionary Views Introduction to Data Dictionary Describe the Data Dictionary Structure Using the Data Dictionary views Querying the Data Dictionary Views Dynamic Performance Views Creating Sequences, Synonyms, Indexes Creating sequences Creating synonyms Creating indexes Index Types Creating Views Creating Views Altering Views Replacing Views Managing Schema Objects Managing constraints Creating and using temporary tables Creating and using external tables Retrieving Data Using Subqueries Retrieving Data by Using a Subquery as Source Working with Multiple-Column subqueries Correlated Subqueries Non-Correlated Subqueries Using Subqueries to Manipulate Data Using the Check Option Subqueries in Updates and Deletes In-line Views Data Control Language (DCL) System privileges Creating a role Object privileges Revoking object privileges Manipulating Data Overview of the Explicit Default Feature Using multitable INSERTs Using the MERGE statement Tracking Changes in Data
Become free from Anxiety and say goodbye to managing your anxiety and start living a happy and content life. This masterclass will show you can change how your mind works to eliminate the negative and debilitating emotional impact of anxiety, once and for all!
Duration 4 Days 24 CPD hours This course is intended for This in an intermediate-level Java development course geared for students experienced with Java and Spring programming essentials. This course does not cover Java or Spring development basics. Overview Working within in an engaging, hands-on learning environment, guided by our expert team, attendees will: Understand the ReactiveX specification Understand the basics of Reactive Programming Discuss the advantages and limitations of Observables Write a client application capable of handling Reactive events Apply operators to event streams to filter, modify and combine the objects emitted by event publishers Select the appropriate type of Event Source Use both Cold and Hot Observables Deal with backpressure problems in reactive programming Develop a reactive web application using Spring WebFlux Define application flows of a WebFlux application Use the WebClient API to work with both synchronous and streaming APIs Develop Unit and Integration tests to test WebFlux endpoints Creating a reactive REST endpoint Become familiar with the basics of WebSockets Create a WebSocket endpoint using Spring Create a WebSocket client Understand the basics of NoSQL Become familiar with the basics of MongoDB Understand how the data in MongoDB can be retrieved using a Reactive API Define Spring Data MongoDB repositories Query the MongoDB using Spring Data Define a reactive repository using MongoDB Explore the Spring Data R2DBC API to perform reactive CRUD operations against a relational database Spring Data reative allow us to implement database operations relying on Reative Programming APIs. While the Spring R2DBC initiative aims to bring reactive programming to relational databaes, several NoSQL databases already provide this possibility. After an introduction to NoSQL and the MongoDB, this courses covers the APIs available to communicate with this NoSQL database using both blocking and reactive APIs.Introdcution to Reactive Spring is a comprehensive Java training workshop geared for experienced developers who wish to explore concurrent, asynchronous and reactive programming APIs and techniques using Spring. After an introduction to reactive programming, Reactive Streams and the Project Reactor APIs, this course will show how this APIs are integrated into Spring. Spring 5 includes Spring WebFlux, providing a reactive programming model for web applications, including support for Reactive REST APIs. Spring WebSocket assists in the creation of web applications which provide a full-duplex, two-way communication between client and server. Introduction to Reactive Programming Reactive Manifesto Introduce ReactiveX ReactiveX implementations The Observer, Iterator pattern and functional programming Discuss hot and cold publishers Reactive Streams API Introduce the Reactive Streams specification Publisher and Subscribers java.util.concurrent.Flow Transformation of Messages (Processor) Controlling messages Tutorial: Setup Eclipse for Using Maven Introduction Introduce the Reactor Building blocks Flux and Mono Creating observables Subscribing to a stream Testing Event Sources (introduction) Testing reactive implementations StepVerifier : test sequence of emitted items Defining expectations TestPublisher: produce test data to test downstream operators Reactive Operators Introduce Operators Show the use of marble diagrams Explain some commonly used operators Callback operators Schedulers (Multithreading) Thread usage of subscriber and consumer Using the subscribeOn method Introduce the Scheduler interface Using the observeOn method Backpressure Strategies for dealing with Backpressure ?reactive pull? backpressure Exception Handling Handling errors in onError Exception handling strategies Using onErrorReturn or onErrorNext operators Using the retry operators The Global Error Handler Spring Data Review Quick review of Spring Data repositories Query return types Defining Query methods Pagination and sorting R2DBC Reactive Relational Database Connectivity DatabaseClient Performing CRUD operations Reactive Query annotated methods Spring WebFlux: Introduction Annotated Controllers Functional Endpoints WebFlux configuration Creating a reactive REST endpoint Defining flows Defining the application flow Actions Defining decision Navigating flows RouterFunction View Technologies View technologies Using Thymeleaf to create the view View Configuration Spring WebClient: Introduction to WebClient Working with asynchronous and streaming APIs Making requests Handling the response Lab: WebClient WebTestClient Testing WebFlux server endpoints Testing controllers or functions Define integration tests Introduction to Spring Reactive WebSockets Be familiar with the basics of WebSockets Understand the HTTP handshake and upgrade Name some of the advantages of WebSockets Defining the WebSocket WebSocket Message Handling WebSocketSession Implementing the WebSockethandler Creating a Browser WebSocket Client WebSocket STOMP Streaming (or Simple) text-orientated messaging protocol Introduce SockJS Connecting to the STOMP endpoint Configuring the message broker STOMP destinations Reactive WebSocket Reactive WebSocket support Implement the reactive WebSocketHandler BigData Introduce Big Data Explain the need for enhanced data storage Introduction to MongoDB JavaScript Object Notation Overview Introduce Binary JSON (BSON) Starting the database Creating Collections and Documents Executing ?simple? database commands Introduce the ObjectID Searching for documents using query operators Updating and deleting documents MongoDB Compass Spring and MongoDB MongoDB Support in Spring Data MongoClient and MongoTemplate Spring Data MongoDB configuration @EnableMongoRepositories Adding documents to the database The @Document and @Field annotations Polymorphism and the _class property The Criteria object Spring Data MongoDB MongoRepository Field naming strategy Using JSON queries to find documents The @PersistenceConstructor annotation Reactive Repositories with MongoDB Using reactive repositories ReactiveMongoTemplate RxJava or Reactor Additional course details: Nexus Humans Introduction to Reactive Spring (TT3355 ) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Introduction to Reactive Spring (TT3355 ) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
'Contraception Update for Healthcare Professionals' This full-day course designed to provide you with the latest information and updates in the field of contraception. This training is ideal for healthcare professionals who are already practicing in the area of contraception and are seeking to enhance their knowledge and ensure they are delivering the most up-to-date advice to their patients. Throughout the day, we will cover all contraceptive methods, including emergency contraception, long-acting reversible contraceptives (LARC's), injectables, and oral contraception, among others. This comprehensive course aims to equip you with the necessary skills and knowledge to provide the most effective and appropriate contraceptive advice to your patients. Agenda: - 09:15 AM: Commencement with Coffee and Registration- 09:30 AM: Introduction and Articulation of Course Objectives- 09:45 AM: In-depth Exploration of the Combined Pill - Embracing Regimen Modifications and Adroit Management of Side Effects- 10:00 AM: Delving into Emergency Contraception Strategies- 10:45 AM: Intermission for a Refreshing Coffee Break- 11:00 AM: Examination of the Progestin-Only Pill (POP)- 01:00 PM: Lunch Break- 02:00 PM: Analysis of Intrauterine Contraception Methods- 02:30 PM: Comprehensive Overview of Nexplanon Contraceptive Implant- 02:30 PM: Insight into the Mechanism and Application of the Depo Injection- 03:00 PM: Study of Contraceptive Approaches Tailored for Specific Demographics- 03:30 PM: Interactive Discourse and the Exchange of Exemplary Practices- 03:45 PM: Close Learning outcomes: 1. Stay up-to-date with the latest developments in contraceptive methods, including their efficacy, benefits, and potential risks. 2. Understand the key considerations when recommending different contraceptive methods to patients, taking into account their individual circumstances, preferences, and needs. 3. Gain confidence in providing accurate information about emergency contraception, including its availability, effectiveness, and usage. 4. Develop a deeper understanding of long-acting reversible contraceptives (LARC's), including their benefits, insertion techniques, and patient suitability assessment. 5. Explore the various options for oral contraception and understand the appropriate prescribing practices, potential side effects, and monitoring requirements. 6. Acquire the skills necessary to discuss and manage common challenges related to contraception, such as missed pills, breakthrough bleeding, and patient concerns. The training will be delivered by experienced healthcare professionals with expertise in contraception, ensuring that you receive the most relevant and up-to-date information. The session will include interactive discussions, case studies, and opportunities for networking and knowledge sharing.
Duration 5 Days 30 CPD hours This course is intended for This course is intended for administrators in a Microsoft-centric environment who want to build reusable units of automation, automate business processes, and enable less-technical colleagues to accomplish administrative tasks. Overview Describe the correct patterns for building modularized tools in Windows PowerShell Build highly modularized functions that comply with native PowerShell patterns Build controller scripts that expose user interfaces and automate business processes Manage data in a variety of formats Write automated tests for tools Debug tools This course covers advanced Windows PowerShell topics, with an emphasis on building reusable tools. Students are introduced to workflow, engage in best practices, and learn a variety of script development and toolmaking techniques. Tool Design Tools do one thing Tools are flexible Tools look native Start with a Command Why start with a command? Discovery and experimentation Build a Basic Function and Module Start with a basic function Create a script module Check prerequisites Run the new command Adding CmdletBinding and Parameterizing About CmdletBinding and common parameters Accepting pipeline input Mandatory-ness Parameter validation Parmeter aliases Emitting Objects as Output Assembling information Constructing and emitting output Quick tests An Interlude: Changing Your Approach Examining a script Critiquing a script Revising the script Using Verbose, Warning, and Informational Output Knowing the six channels Adding verbose and warning output Doing more with verbose output Informational output Comment-Based Help Where to put your help Getting started Going further with comment-based help Broken help Handling Errors Understanding errors and exceptions Bad handling Two reasons for exception handling Handling exceptions in our tool Capturing the actual exception Handling exceptions for non-commands Going further with exception handling Deprecated exception handling Basic Debugging Two kinds of bugs The ultimate goal of debugging Developing assumptions Write-Debug Set-PSBreakpoint The PowerShell ISE Going Deeper with Parameters Parameter positions Validation Multiple parameter sets Value from remaining arguments Help messages Aliases More CmdletBinding Writing Full Help External help Using PlatyPs Supporting online help ?About? topics Making your help updatable Unit Testing Your Code Sketching out the test Making something to test Expanding the test Going further with Pester Extending Output Types Understanding types The Extensible Type System Extending an object Using Update-TypeData Analyzing Your Script Performing a basic analysis Analyzing the analysis Publishing Your Tools Begin with a manifest Publishing to PowerShell Gallery Publishing to private repositories Basic Controllers: Automation Scripts and Menus Building a menu Using UIChoice Writing a process controller Proxy Functions A proxy example Creating the proxy base Modifying the proxy Adding or removing parameters Working with XML Data Simple: CliXML Importing native XML ConvertTo-XML Creating native XML from scratch Working with JSON Data Converting to JSON Converting from JSON Working with SQL Server Data SQL Server terminology and facts Connecting to the server and database Writing a query Running a query Invoke-SqlCmd Thinking about tool design patterns Design tools that use SQL Server for data storage Final Exam Lab problem Break down the problem Do the design Test the commands Code the tool
Duration 2 Days 12 CPD hours This course is intended for This course is intended for intermediate business and requirements analysts who are looking to improve their business case development and presentation skills. This course is also a great fit for project managers and product owners who work closely with business analysts or who perform some form of business case work themselves. Overview Understand the role of the business analyst within the business case process Understand the main professional associations and standards that support business analysts in the industry Discuss the benefits of business case creation Explore how to define the business need Describe the role of the business analyst in supporting the enterprise to determine how to optimally invest in the right project initiatives Explain how to identify stakeholders and the significance to the pre-project activities Discuss the importance of analyzing the enterprise Describe and explore the activities performed to assess the current business environment Explain how a business analyst describes a ?future? state environment including how to identify gaps in enterprise capabilities Present and explore how to define the scope of a solution Describe the activities performed and techniques used to determine viable solution options Explore various techniques for evaluating solution options including feasibility and risk analysis Thoroughly understand the purpose of conducting a feasibility assessment Discuss and practice a number of business analysis techniques that support the business case process Explore the components of a business case Describe how the business case supports decision makers in making go/no-go decisions Demonstrate how to assemble the output from pre-project activities into a well-structured business case Present techniques for presenting business cases to top level managers and obtaining buy-in Discuss methods for preparing for challenges during business case delivery Students learn the steps to effective business case development and support your strategic business recommendations with sound budgeting and financial back-up. The one course you need to make high-impact recommendations and receive full management support for your ideas. Introduction Module Learning Objectives What is Business Analysis Polling Question International Institute of Business Analysis BABOK© Guide Components Project Management Institute Business Analysis for Practitioners: A Practice Guide BABOK© Guide Knowledge Areas Benefits of Business Analysis Polling Question A Business Analyst can Influence Project Success Factors Challenges of Business Analysis Polling Question Purpose of a Business Case Exercise 1a: What Should a Business Case Include Define the Business Case Elements What to Look Out For Who is Involved Exercise 1b: Review Business Case Outline Module Learning Objectives Pre-Project Activities & the Business Analyst Module Learning Objectives The Definition of a Business Analyst The Role of a Business Analyst Responsibilities of a BA BA Role vs. PM Role Business Analysis vs. Systems Analysis Business Analysis Competencies Polling Question Business Analyst Role and Stakeholders Exercise 2a: Review the Case Study What is a Stakeholder? The Importance of Stakeholders Stakeholder Identification Tips for Identifying Stakeholders Other Stakeholder Tips Stakeholder Identification/Analysis Exercise 2b: Identify Roles and Responsibilities Stakeholder Map Stakeholder Matrix & Onion Diagrams A Stakeholder Map Onion Diagram Exercise 2c: Why do we Need to Understand the Enterprise? Why Study the Enterprise? What is Enterprise Architecture? What is Strategy Analysis? About Strategy Analysis Purpose of Strategy Analysis When to Perform Strategy Analysis Strategic Planning Module Summary The Needs Assessment Process Module Learning Objectives Business Need Defined Define Business Need The Needs Assessment Process Problem or Opportunity Exercise 3a: Problem/Opportunity Identification Understanding Why Situation Statements Business Need and Current State Determine the Stakeholders Polling Question Goals and Objectives Polling Question Exercise 3b: Give 3 Examples of Business Goals Define Business Need Techniques Exercise 3c: Identify the Business Need Definition of Strategy Analysis When Business Strategy is not Driving Project Definition Typical Project Profile The Executive Paradox Solution to the Paradox Exercise 3d: Describe 3 Outcomes You Would Expect from the Case Study The Four ?Ares? Understand How to Create a Business Model Business Model Example Exercise 3e: Create a Business Model The Business Case Approach Financial and Strategic Measurement Tools Module Summary Determining the Required Capabilities & Defining Solution Scope Module Learning Objectives Business Need and Current State Purpose of Analyzing the Current State Analyzing Current Capabilities and Process Capabilities Defined Techniques for Analyzing the Current State Define the Future State Techniques for Defining the Future State Assess Capability Gaps Stakeholders Involved when Reviewing Capability Gaps Discussion: Assessing New Capabilities Defining Solution Scope Determining Scope Boundary How to Define Solution Scope Defining Solution Scope Project Scope and Product Scope Scope Modeling Techniques Used to Define Scope Define Scope Boundaries Modeling Scope: Context Diagram Exercise 4a: Create a Context Diagram from the Case Study Communicating Solution Scope to Stakeholders Stakeholders Participating in Scope Activities Exercise 4b: Discuss Managing Expectations Module Summary Assessing Feasibility & Proposing Solution Options Module Learning Objectives Financial Analysis Purpose of Financial Analysis Costs versus Benefits Financial Models Timing for Assessing Financial Benefits Risk Assessing Risks Risk Process Exercise 5a: Identifying Risks Risk Analysis Capturing and Categorizing Risks Risk Strategies Tolerance for Risk Determining Solution Options Solution Option Process Determining and Analyzing Solution Options Brainstorming Conducting an Outcomes Focused Brainstorming Session Stakeholders Involved in Determining Solution Options Exercise 5b: Determining Solution Options Feasibility Analysis Discussion: Ranking Solution Options Discussion: Recommending the Most Viable Option Exercise 5c: Assess the Most Viable Options Solution Approach Definition Exercise 5d: Review the Business Case Templates Module Summary Packaging & Presenting the Business Case Module Learning Objectives Circumventing a Business Case Documenting the Business Case Value of the Business Case Process Business Case Components Business Case Techniques Build a Convincing Business Case Discussion: Identifying Decision Criteria Exercise 6a: Supporting a Go/No Go Decision Packaging the Business Case Planning Business Case Delivery Discussion: Planning Stakeholder Buy-in Information and Communication Needs in the Business Case Process Presenting your Business Case Exercise 6b: Anticipating and Responding to Challenges Module Summary Course Wrap Up Course Summary Questions Additional Resources Thank You Additional course details: Nexus Humans BA03 - Writing Effective Business Cases training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the BA03 - Writing Effective Business Cases course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Duration 4 Days 24 CPD hours This course is intended for DevOps engineers Integration engineers Network and software architects Network engineers Software engineers System administrators Overview After completing this course, you should be able to: Describe network and IT convergence Describe Cisco NSO architecture Describe Linux Configure Cisco NSO Set up access control to Cisco NSO system Describe Cisco NSO Integration Options Explain version control systems and basic git concepts Describe the purpose of continuous integration and continuous delivery Implement Cisco NSO high availability Describe scalable system management Describe software development methodologies Describe service maintenance Perform NED upgrades Use Cisco NSO for managing services and their associated device configurations Describe Cisco NSO change management Explain service problem management Use Cisco NSO for service monitoring and compliance reporting Describe Cisco NSO inventory management Describe Cisco NSO use cases The Cisco Network Services Orchestrator (NSO) Administration and DevOps (NSO303) v4.0 course continues the learning journey of the NSO Essentials for Programmers and Network Architects (NSO201) v4.0 and NSO Advanced for Python Programmers (NSO300) v4.0 courses by introducing you to the system administration and DevOps focusing on NSO; the robust bridge linking network automation and orchestration tools, examining the development, operation, and administration task functions. You will learn how to set up, configure, deploy, and maintain a Cisco Network Services Orchestrator solution, and learn best practices for using DevOps. The examples shown in this course demonstrate real-world scenarios to prepare you for deployment and management of new or existing NSO instances. The course guides you through the setup of a production ready NSO instances using system installation with access control settings, the deployment of NSO in Docker containers, and introduces modern DevOps concepts and tools such as Git and Continuous Delivery/Continuous Deployment (CI/CD). You will learn how to migrate CDM devices, how to build NETCONF NEDs from the NSO CLI, how to handle NSO Alarms, and many more features that benefit you in your journey with Cisco NSO. Course Outline Introducing Network and IT Convergence Introducing Cisco NSO Architecture Introducing Linux Explaining Cisco NSO Setup Exploring Access Control Describing Integration Options Explaining Version Control System Describing Continuous Integration and Continuous Delivery Introducing Scalability and High Availability Describing Scalable System Management Describing Software Development Methodologies Introducing Service Maintenance Performing Network Element Driver (NED) Upgrades Introducing Configuration Management Describing Change Management Explaining Service Problem Management Explaining Service Monitoring and Compliance Reporting Introducing Inventory Management Describing Cisco NSO Use Cases
Duration 5 Days 30 CPD hours This course is intended for This course is intended for individuals who are Application designers and database developers, database administrators and web server administrators. Overview Upon successful completion of this course, students will be able to work with Oracle database programming using the PL/SQL programming language. They will learn the syntax, structure and features of the language. In this course, students will learn the foundation for the programming series and the use of database-resident stored program units for Oracle 12c. Selection & Setup of the Database Interface Considering Available Tools Selecting the Appropriate Tool Oracle Net Database Connections Oracle PAAS Database Connections Setup SQL Developer Setup SQL*Plus Setup Jdeveloper About Bind & Substitution Variables Using SQL Developer Using SQL*Plus Choosing a Database Programming Language What is Database Programming? PL?SQL Performance Advantages Integration wth Other Languages PL/SQL Language Fundamentals PL/SQL Program Structure LANGUAGE SYNTAX RULES EMBEDDING SQL WRITING READABLE CODE GENERATING DATABASE OUTPUT SQL*PLUS INPUT OF A PROGRAM BLOCK Declare Section About the Declare Section DECLARE PRIMITIVE TYPES DECLARATION OPTIONS NOT NULL CONSTANT DATA DICTIONARY INTEGRATION %TYPE DECLARE SIMPLE USER---DEFINED TYPES TYPE... TABLE TYPE... RECORD EXTENDED USER---DEFINED TYPES Begin Section About the Begin Section Manipulating Program Data Logic Control & Branching GOTO LOOP IF-THEN-ELSE CASE Exception Section ABOUT THE EXCEPTION SECTION ISOLATING THE SPECIFIC EXCEPTION PRAGMA EXCEPTION_INIT SQLCODE &SQLERRM Example SQL%ROWCOUNT &SELECT...INTO Beyond the Basics: Explicit Cursors ABOUT EXPLICIT CURSORS EXTENDED CURSOR TECHNIQUES FOR UPDATE OF Clause WHERE CURRENT OF Clause Using FOR?LOOP Cursors Beyond the Basics: Nested BlocksBeyond the Basics: Declared Subprograms USING DECLARED SUBPROGRAMS DECLARED PROCEDURE DECLARED FUNCTION Introducing Databse-Resident Program Units ABOUT DATABASE---RESIDENT PROGRAMS PHYSICAL STORAGE & EXECUTION TYPES OF STORED PROGRAM UNITS STORED PROGRAM UNIT ADVANTAGES MODULAR DESIGN PRINCIPLES Creating Stored Procedures & Functions STORED PROCEDURES & FUNCTIONS CREATE PROCEDURE / CREATE FUNCTION CREATING PROCEDURES & FUNCTIONS RAISE_SALARY() Procedure SALARY_VALID() Function THE PARAMETER SPECIFICATION DEFAULT Clause SYSTEM & OBJECT PRIVILEGES USING THE DEVELOPMENT TOOLS Executing Stored Procedures & Functions CALLING PROCEDURES & FUNCTIONS UNIT TESTING WITH EXECUTE ANONYMOUS BLOCK UNIT TESTING SPECIFYING A PARAMETER NOTATION SQL WORKSHEET UNIT TESTING CALLING FUNCTIONS FROM SQL Maintaining Stored Program Units RECOMPILING PROGRAMS Mass Recompilation Using UTL_RECOMP() DROPPING PROCEDURES & FUNCTIONS DROP PROCEDURE / FUNCTION DATA DICTIONARY METADATA Using USER_OBJECTS Using USER_SOURCE Using USER_ERRORS Using USER_OBJECT_SIZE Using USER_DEPENDENCIES Managing Dependencies DEPENDENCY INTERNALS TRACKING DEPENDENCIES THE DEPENDENCY TRACKING UTILITY SQL DEVELOPER DEPENDENCY INFO DEPENDENCY STRATEGY CHECKLISTS Creating & Maintaining Packages ABOUT PACKAGES CREATING PACKAGES MAINTAINING PACKAGES PERFORMANCE CONSIDERATIONS Advanced Package Capabilities DEFINER & INVOKER RIGHTS WHITE LITS & ACCESSIBLE BY PERSISTENT GLOBAL OBJECTS DEFINING INITIALIZATION LOGIC OBJECT ORIENTATION SUPPORT Advanced Cursor Techniques USING CUSROS VARIABLES USING SYS_REFCURSOR USING CURSOR EXPRESSIONS Using System-Supplied Package DBMS_OUTPUT() UTL_FILE() FOPEN() EXAMPLE Database Trigger Concepts ABOUT DATABASE TRIGGERS DML EVENT TRIGGER SUB---TYPES DATABASE TRIGGER SCENARIO TRIGGER EXECUTION MECHANISMS TRIGGERS WITHIN SQL WORKSHEET Creating Database Triggers STATEMENT-LEVEL TRIGGERS Using RAISE_APPLICATION_ERROR() ROW---LEVEL TRIGGERS EXAMPLES OF TRIGGERS EMPLOYEE_SALARY_CHECK Example EMPLOYEE_JOURNAL Example BUDGET_EVENT Example INSTEAD OF TRIGGERS TRIGGERS WITHIN AN APPLICATION Maintaining Database Triggers CALL SYNTAX TRIGGER MAINTENANCE TASKS SHOW ERRORS TRIGGER DROP TRIGGER ALTER TRIGGER MULTIPLE TRIGGERS FOR A TABLE HANDLING MUTATING TABLE ISSUES Implementing System Event Triggers WHAT ARE SYSTEM EVENT TRIGGERS? DEFININGTHE SCOPE AVAILABLE SYSTEM EVENTS SYSTEM EVENT ATTRIBUTES