Skip to main content

Welcome to DBA Master – Database Tips, Tricks, and Tutorials

Welcome to DBA Master ! This blog is dedicated to all things related to database administration , SQL optimization , and performance tuning . Whether you're a beginner or a seasoned DBA, you'll find practical guides, troubleshooting tips, and real-world tutorials to help you work smarter with data. What to Expect: SQL performance tuning tips Indexing strategies Backup and recovery best practices High availability and replication techniques Database creation, configuration, and setup Monitoring queries and scripts for proactive performance management Migration guides across different database platforms Security essentials and best practices Recommended tools for DBAs Real-world error fixes and how to solve them Stay tuned — exciting content is coming soon. Feel free to bookmark and share: www.dbamaster.com ! Thanks for visiting!

PLSQL Procedures

procedure is a subprogram that performs a specific task. It's a part of PL/SQL and can be stored in the database for reuse.

Features:

  1. Modularity: Procedures allow you to break down complex tasks into smaller, manageable units of code, promoting better organization and readability.
  2. Reusability: Can be reused across multiple applications.
  3. Parameters: Accepts IN, OUT, and IN OUT parameters for dynamic input/output.
  4. Encapsulation: Hides implementation details, allowing for easier maintenance.
  5. Error Handling: Can include exception handling to manage errors gracefully.
  6. Transaction Control: Supports COMMIT and ROLLBACK for database transactions.
  7. Performance: Optimized execution can improve performance for complex operations.
  8. Overloading: Multiple procedures can have the same name with different parameters.
  9. Integration: Can be called from triggers and grouped in packages.

Types of parameters:

  1. IN Parameter: Accepts a value when the procedure is called. It cannot be modified within the procedure.
  2. OUT Parameter: Returns a value to the calling environment. It must be assigned a value within the procedure.
  3. IN OUT Parameter: Accepts an initial value and can return a modified value.

Example for Simple procedure:

CREATE OR REPLACE PROCEDURE welcome_proc
AS
BEGIN
dbms_output.put_line('Welcome to Pearl Database Service!');
dbms_output.put_line('Please visite the website www.pearldbs.com');
END;
/


Run: EXECUTE welcome_proc;    or exec welcome_proc

IN Parameter Example:

Create or replace procedure update_employees ( emp_id in integer)
Is
Begin
Update employees set salary=’5000’ where employee_id=emp_id;
End update_employees;
/


Run: EXECUTE update_employees(1);

OUT Parameter Example:

Create or replace procedure select_employees (emp_id in employees.employee_id%type)(fname out employees.salary%type)
Is
Begin
Select first_name into fname from employees where employee_id=emp_id;
End update_employees;
/


Run:
Declare
fname varchar2(15);
Begin
Select_employees(&emp_id,fname)
Dbms_output.putline(fname);
End;
/

IN OUT Parameter Example:

Create or replace employees_inout (emp_id in out number)
Is
Begin
Select salary into emp_id from employees where employee_id=emp_id;
End employees_inout;
/

Run:

Declare
Id number := &emp_id;
Begin
Employee_inout(&emp_id)
Dbms_output.put_line(emp_id);
End;
/

List out the procedures:

Select object_name, object_type from user_objects where object_type=’PRPCEDURE’;
SELECT owner, object_name, procedure_name FROM all_procedures ORDER BY owner, object_name, procedure_name;
SELECT object_name, procedure_name FROM user_procedures ORDER BY object_name, procedure_name;
SELECT owner, object_name, procedure_name FROM dba_procedures ORDER BY owner, object_name, procedure_name;
SELECT text from user_source where name=’PROCEDURE_NAME’;

Drop the Procedures:

DROP PROCEDURE procedure_name;

Comments

Popular posts from this blog

Oracle Database 19C Performance Tunning - PART 1

Advantages: 1. Improved Query Performance •    Optimized SQL execution plans lead to faster query response times. •    Reduces unnecessary full table scans and improves indexing strategies. •    Parallel execution tuning speeds up large data processing tasks. 2. Better Resource Utilization •    Efficient use of CPU, memory, disk I/O, and network resources. •    Reduces contention on Redo Logs, Undo Tablespaces, and Buffer Cache. •    Helps in load balancing across multiple instances in RAC (Real Application Clusters). 3. Increased System Scalability •    Ensures that the database can handle a growing number of users and transactions. •    Proper tuning allows scaling without degrading performance. •    Optimized parallel processing ensures better performance on multi-core servers. 4. Lower Infrastructure Costs •    Reduces the need for add...

Oracle RMAN Backup And Restore

RMAN: (Oracle 8) RMAN (Recovery Manager) is a utility provided by Oracle Database to perform backup, restore, and recovery operations. It is a command line tool. Features of RMAN in Oracle 19c Comprehensive Backup Capabilities: Full and incremental backups. Block-level backups for efficient data storage. Archived redo log backups. Fast Recovery Area (FRA) integration for centralized backup storage. Efficient Recovery Options: Point-in-time recovery (PITR). Complete and incomplete recovery. Flashback database capabilities for quick undo of changes. Multitenant Database Support: RMAN fully supports container databases (CDBs) and pluggable databases (PDBs). Provides flexibility to back up and recover individual PDBs or entire CDBs. Automatic Space Management: Manages disk space in the FRA. Automatically deletes obsolete backups and archived logs. Data Deduplication and Compression: Backup optimization through block-level deduplication. Built-in compression algorithms to reduce storage req...

Oracle 19c Database Software Installation in OEL8

 Pre-requisites for OS level:            Set the static IP Address     Disable the Firewall (systemctl stop firewalld & systemctl disable firewalld)     set SELINUX=permissive on /etc/selinux/config  ##Need to restart the server use init 6 Oracle Installation Pre-requisites Methods     Automatic Setup     Manual Setup      Automatic requisites Setup: (avoid step 1 to step 5): dnf install -y oracle-database-preinstall-19c Install the dependencies: curl -o oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm dnf -y localinstall oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm Manual Setup: step 1: Add the karenl parameters and values vi /etc/sysctl.conf     fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel....