RSS

Category Archives: PL/SQL

Oracle PL/SQL Developers

Completed training on “Oracle Database 12c R2: Advanced PL/SQL”

Dear Friends,
I am glad to share with you all that I completed the training on demand on “Oracle Database 12c R2: Advanced PL/SQL”.
Thanks to Oracle University and my faculty Brent Dayley for providing this training on demand.
Oracle Advanced PL/SQL in Oracle 12c R2
The training covered important features in Oracle PL/SQL in 12c R2 version. It was well designed and gave a good head-start from the technical perspective.

I would also like to thank Oracle University which provides wonderful platform for such courses.

My detailed resume can be found here.

Cheers!
Vijay

 
Leave a comment

Posted by on January 2, 2020 in Oracle, PL/SQL

 

Tags: , ,

Completed Oracle Apps R12 Technical Training

Last updated on June 3rd, 2018 at 11:11 pm

Dear Friends,
Its pleasure to inform you all that I completed Oracle Apps R12 Technical Training. It was an online training session by Sridevi Koduru.
The training material and sessions were very clear and to the point! It was well designed and gave a good head-start in Oracle Apps Financials from the technical perspective.

Oracle Apps R12 Technical Training

Oracle Apps R12 Technical Training

I would also like to thank Udemy which provides wonderful platform for such courses. #BeAble

My detailed resume can be found here.

Cheers!
Vijay

 
Leave a comment

Posted by on April 17, 2018 in Finance, General, Oracle, PL/SQL

 

Tags: , , , , , , , , ,

Secured 27th position in Annual Logic Championship for 2015

TrophyDear All,
I am delighted to share with you that I have secured 27th position in Annual Logic Championship for 2015 🙂

The championship was organised by Oracle PL/SQL Challenge. The championship was held on invitation only basis. There were 41 participants from across the world. Below is the result of the championship.

Secured 27th Position in Annual 2015 Logic Championship

Secured 27th Position in Annual 2015 Logic Championship

The number next to the name represents the number of times the player has participated in a championship. Thanks Oracle and PL/SQL Challenge for the public recognition of my accomplishment.

Here is the link to the webpage which shows my accomplishment. The link to my public profile on Oracle PL/SQL Challenge is here.

Cheers!
Vijay

 
Leave a comment

Posted by on March 21, 2016 in General, Oracle, PL/SQL

 

Tags: , , ,

Awarded “High Ranking in Month” by Oracle PL/SQL Challenge

TrophyDear Friends,
I am ecstatic to share with you that I have been awarded by Oracle PL/SQL Challenge, an online website which offers a daily quiz on Oracle PL/SQL. The website has  quickly attracted over 1,000 daily players, making it one of the most active PL/SQL-related websites on the Internet.

I am awarded for “High Ranking in Month” for September 2015 and November 2015 in their competition “I Love Logic“.

High Ranking in Month for November 2015

High Ranking in Nov 2015

High Ranking in Month for September 2015

High Ranking in Sep 2015

Public recognition of accomplishment on PLSQL Challenge website

Accomplishment
The number next to my name shows my points on website till date.

Its an honour to win this award among 1400 active participants from across the globe 🙂 Thanks Oracle and PL/SQL Challenge for the public recognition of my accomplishment 🙂

Here is the link to the webpage which shows my accomplishment. The link to my public profile on Oracle PL/SQL Challenge is here.

Cheers!
Vijay Mahawar

 
Leave a comment

Posted by on December 12, 2015 in Oracle, PL/SQL

 

Tags: , , , , ,

More minds meet at Sangam 2015…

Diary on Sangam’15
21st, 22nd Nov 2015 at Hyderabad International Convention Centre, HITEC City, Hyderabad, India

In the recently concluded two day Oracle conference – Sangam 2015, there were more number of attendees than last year (Sangam 2014). Sangam – An annual conference for Oracle Technologist across India is organised by AIOUG (All India Oracle Users Group) and aptly has tagline of ‘meeting of minds…’.

It was a privilege to attend such a large scale event for third consecutive year. It was an honour to get in touch with the Oracle ACE and Oracle ACE Directors and hear them speak in front of august gathering. There were numerous sessions lined-up as always. I am sharing sessions attended by me during the two days conference in brief.

Day 1: 21st November 2015

Tim Hall – Oracle ACE Director (Day 1 | Day 2) – It was treat to hear him again and his session on Oracle 12c Consolidations and pros/cons was very relevant and updated.

Kamran Agayev – Oracle Certified Master – His session on “Oracle 12c ASM new features” with webetorial was very crisp and provided lot of insights into the world of Oracle 12c for ASM.

Aman Sharma – Oracle ACE – His session on “Oracle RAC Node Eviction” was overwhelming and demonstrated his expertise in the RAC yet again. It was very useful.

Anju Garg – her session on Oracle ACFS High Availability over NFS Service was enthralling and was studded with illustrations. It was good to know that ACFS now supports all types of files.

Day 2: 22nd November 2015

Oracle VM and Oracle Linux – Kamal Dodeja (Sales Consulting Manager) and Ritesh Kumar (Senior Technical Consultant) from Oracle India Pvt. Ltd. – Their session on Oracle Linux and Oracle VM was primarily revolving around the Technical features offered by Oracle Linux and Oracle VM and concluded with the pricing details.
I had previously blogged about installation of Oracle VM, Oracle Linux and Installation of Oracle 12c on Oracle Enterprise Linux which is available here.
One interesting takeaway from this session of theirs was ksplice – which actually provides high availability and reduces downtime. Overview, Downloads and Documentation on ksplice is available at OTN here. It was a strategic acquisition made by Oracle in 2011. This enables important kernel patches to be applied without reboot or without bringing down any application services in Oracle Linux.

Debaditya Chatterjee – Product Manager Oracle USA – Oracle Database In-Memory Options – It was a good review of Oracle In-Memory database which was delivered by Maria Colgan in the last edition of Sangam. His session focused on the what’s and why’s of Oracle In-Memory database.

Satyendra Pasalpudi – Oracle ACE Director – His session on “Oracle Cloud DBA” showcased the next thing from Oracle – Oracle Cloud. The session was mainly for DBAs.

The conference closed with a motivational speech by “Dr. Rajdeep Manwani” – who shared his priceless life experiences about hard-work, patience, perseverance, failure, success and imaginary finishing line in marathon when most of the contestant gives up.

Thanks to AIOUG and Oracle Technology Network (OTN) for organising such events and providing Oracle fraternity in India a splendid opportunity to hear the speakers from elite Oracle community 🙂

Cheers!
Vijay Mahawar

 
Leave a comment

Posted by on November 23, 2015 in DBA, Oracle, PL/SQL

 

Tags: , , , , , , , ,

Best Practices for Oracle Developers: Comments

Last updated on November 26th, 2014 at 07:07 am

CommentsComments are text embedded within SQL statements and PL/SQL code which describes the purpose of the code. Comments improve the readability, usability and maintenance of the code. Proper comment and formatting can save lot of hours of unproductive work for developers and teams.

Oracle developers can use two types of comments – In Line and Multiline. Both Inline and Multiline comments can be used in SQL statements and PL/SQL.

In-Line comments starts with — (two hyphens) and is only limited to one line.
Multiline comments start with /* and ends with */ and spans multiple lines.

Oracle uses following comment styles for its standard scripts (scripts under – $oracle_home/rdbms/admin directory) which are shipped with oracle database.

--
-- Copyright (c) Oracle Corporation 1988, 1999.  All Rights Reserved.
--
--  NAME
--    demobld.sql
--
-- DESCRIPTION
--   This script creates the SQL*Plus demonstration tables in the
--   current schema.  It should be STARTed by each user wishing to
--   access the tables.  To remove the tables use the demodrop.sql
--   script.
--
--  USAGE
--       SQL> START demobld.sql
--
--

In many oracle shipped sql scripts you will see REM commands (REMARK command). This can also be used to enhance the readability and maintenance of the sql scripts. A sample snippet from the mksample.sql is shown below:

Rem
Rem $Header: mksample.sql.sbs 02-apr-2003.14:55:17 $
Rem
Rem mksample.sql
Rem
Rem Copyright (c) 2001, 2003, Oracle Corporation. All rights reserved. 
Rem
Rem NAME
Rem mksample.sql - creates all 5 Sample Schemas
Rem
Rem DESCRIPTION
Rem This script rees and creates all Schemas belonging
Rem to the Oracle Database 10g Sample Schemas.
Rem If you are unsure about the prerequisites for the Sample Schemas,
Rem please use the Database Configuration Assistant DBCA to
Rem configure the Sample Schemas.
Rem
Rem NOTES
Rem - OUI instantiates this script during install and saves it
Rem as mksample.sql. The instantiated scripts matches
Rem the directory structure on your system
Rem - Tablespace EXAMPLE created with:
Rem CREATE TABLESPACE example 
Rem NOLOGGING 
Rem DATAFILE '<filename>' SIZE 150M REUSE 
Rem AUTOEXTEND ON NEXT 640k
Rem MAXSIZE UNLIMITED
Rem EXTENT MANAGEMENT LOCAL
Rem SEGMENT SPACE MANAGEMENT AUTO;

In my PL/SQL programs I use multi-line comment style like below:

/************************************************************************
** Purpose: Script to demonstrate the top 10 features in Oracle 12c for developers
** Date: 1st Feb 2014, Saturday
** Author: Vijay Mahawar
** Website: https://www.mahawar.net/blog
** Version: 1.0
*************************************************************************/

Oracle allows to store comments even for schema objects like table and views and on columns of table, views and materialized views. These comments provide useful information about the table and columns to other developers.

To insert an explanatory remark on the notes column of the EMP table, you might issue the following statement:

COMMENT ON COLUMN EMP.EMPNO IS 'Employee Number assigned to Employees';

The comments defined in this way are stored in data dictionary views.

Object comments are stored in USER_TAB_COMMENTS

Column comments are stored in USER_COL_COMMENTS

To drop this comment from the database, issue the following statement:

COMMENT ON COLUMN EMP.EMPNO IS '';

Please use setup scripts and demo script script for this.

Note: Few minutes spent on proper comments can save hours of efforts in code maintenance and debug.

Cheers!
Vijay

 
Leave a comment

Posted by on March 1, 2014 in Oracle, PL/SQL

 

Tags: , , , , , ,

Best Practices for Oracle Developers and DBAs

Last updated on November 26th, 2014 at 07:07 am

Best Practices for Oracle Developers and DBAThere has been paradigm shift in the technological and scientific innovations that are happening around us. From First generation Vaccum Tubes to Latest generation of Nanotechnology, From Machine Language to High Level Programming Language, Technological innovation has made the computing devices – cheaper, faster, smaller.

The communication between the devices has seen a phenomenal growth. The volume of data produced by all this is rising exponentially. Today technology touches human lives more than ever before.

With all the technological and scientific progress happening around us we have kept our rich cultural heritage and values intact. We as humans are evolving so is the Oracle Database Product.

Over the years there have been several Oracle Database releases and version upgrades. What has remained mostly same are the best practices.

Here is the list of best practices which you can expect in my next few blog posts.

SQL and PL/SQL:

  1. Comments – In Line and Multi Line
  2. Replace Hard coded literals with Constants and move all related constants into a common package.
  3. Modular Approach – Split big program into generic and standalone sub-programs.
  4. Instrumentation whereever possible – ON/OFF as required.
  5. Achieve as much as poosible with SQL, to avoid context switching between SQL and PLSQLengine.
  6. Exception Handling – Try to handle all possible exceptions
  7. Avoid “Select * from”, Use fully qualified names when selecting from multiple tables
  8. Mention AUTHID clause, BEQUEATH clause,
  9. Avoid default Oracle implicit type conversion.
  10. Use %ROWTYPE for record types and %TYPE for variables. Avoid hardcoding VARCHAR2 length.
  11. Exit the program gracefully. Make sure to free up resources and memory before exiting.
  12. Familiarize with in-built oracle packages – Don’t write routine which is already provided by oracle.
  13. Show user, con_id – set timing on and many more, use spool in SQL scripts
  14. Ensure that the rollback scripts are ready.
  15. Compile objects in the order of precedene.
  16. Ensure you use paranthesis in expressions to override the default precedence order.
  17. Start with the data model and then proceed with the coding for complex SQL queries.
  18. Maintain test scripts/harness to test the logic and test performance.
  19. Use GET and SET to modify package variables.
  20. Use NOCOPY to copy variables by reference for performance benefits.
  21. Use control tables to make the code customized and generic.

DBA:

  1. Group related privileges and grant it to a role for better manageability.
  2. Lock all unused user accounts and change default passwords for all default accounts
  3. Use seperate disks for system, sysaux; application data and Index tablespaces for better performance.
  4. Use comments whenever a parameter is changed – Record – date, time and changed by.
  5. Use seperate disks for multiplexed redo logs files in same redo log groups.
  6. Gather statistics using DBMS_STATS after BULK DML on tables and partitions.
  7. Schedule the housekeeping jobs to runs during off peak time.
  8. Keep oracle documents and useful links ready and handy for reference just like a bible.

In my next few blog posts, I shall showcase some of the best practices both for Developers and DBAs with the help of demo scripts.

Conclusion:

This list is not complete and is ever evolving. It is outcome of my years of association with Oracle technology and the learnings I had taken from Oracle pundits. Its kind of survival kit for both Developers and DBAs.

Cheers!
Vijay

 
Leave a comment

Posted by on February 23, 2014 in DBA, Oracle, PL/SQL

 

Tags:

10 Features in Oracle 12c for Developers

Last updated on November 26th, 2014 at 07:07 am

Dear All,
After a long break and holiday season, today I tried my hands on some new features in Oracle 12c for developers.
There has been flood of articles, blog posts, seminars, webinars, conference presentations, videos on Oracle 12c since its launch, which is making wave in the cyber world. Over the years I have learnt to overcome this overwhelming phenomenon in my own way.  The idea is to create my own list of favorite features in new release of Oracle Database and post it 🙂

But all that remained enigma until I tried some of the features today. I have narrowed down my list to 10 features for developers in Oracle 12c.

DH-082013-1.png-550x0

Source: ToadWorld – Oracle 12c understanding the version number

Did you know that Oracle release version number says a lot about the Oracle Database Product you are working on? There is a one article on understanding Oracle version numbers by Dan Hotka. In case you are interested you can access it on ToadWorld website here.

The presentation content for my Top 10 Features in Oracle 12c for Developers can be found here.

You can download the – setup script and demo script available on my website.

I would like to end this post by sharing a wonderful interactive guide on Oracle 12c. The interactive guide is available on Oracle website here.

Hope you find the content useful and it gives you head start to latest release of Oracle 12c.

Cheers!
Vijay Mahawar

 
Leave a comment

Posted by on February 1, 2014 in DBA, Oracle, PL/SQL

 

Tags: , , , , , , , ,

Video

Top 12 Features of Oracle Database 12c

Last updated on November 26th, 2014 at 07:07 am

Source: Oracle on Youtube
With over 500 new features – narrowing down to a few favorites was a daunting task.
But Tom Kyte, Vice President of Oracle, (of AskTom fame) was up to the challenge and shares his top 12 features of Oracle Database 12c.

 
Leave a comment

Posted by on November 13, 2013 in DBA, Oracle, PL/SQL

 

Tags: , , , , , , , , , ,

Image

Understanding Performance Tuning in Oracle – Google Hangout Event

Last updated on November 26th, 2014 at 07:07 am

Dear Friends,
I will be presenting an online session on Oracle Performance Tuning. Its a Google Hangout Event to be conducted on 2nd Feb 2013, Saturday starting at 5:00 pm IST.

For details and registration please click register or click on below screenshot.

Understanding Performance in Oracle - Google Hangout Event

Looking forward to catch you all there.

For the events and session conducted by me in past you can visit the events archive section here.

 
1 Comment

Posted by on January 26, 2013 in DBA, Oracle, PL/SQL

 

Tags: ,

 
snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake snowflake