Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • Build your AI Agent
    • GfG 160
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Contests
    • Accenture Hackathon (Ending Soon!)
    • GfG Weekly [Rated Contest]
    • Job-A-Thon Hiring Challenge
    • All Contests and Events
  • Databases
  • SQL
  • MySQL
  • PostgreSQL
  • PL/SQL
  • MongoDB
  • SQL Cheat Sheet
  • SQL Interview Questions
  • MySQL Interview Questions
  • PL/SQL Interview Questions
  • Learn SQL and Database
Open In App
Next Article:
Oracle Architecture
Next article icon

PL/SQL Architecture

Last Updated : 29 Aug, 2023
Comments
Improve
Suggest changes
Like Article
Like
Report

Prerequisite : PL/SQL Introduction

What do you mean by PL/SQL?

In Oracle, PL/SQL (Procedural Language/SQL) is the procedural language extension to the non-procedural SQL. It combines the data manipulation power of SQL and the procedural power of standard programming languages.  PL/SQL was developed by Oracle Corporation within the early ’90s to reinforce the capabilities of SQL. It integrates well with SQL* PLUS and other application development products of Oracle. PL/SQL is the superset of SQL. It provides SQL data manipulation commands and SQL data types. In PL/SQL, a block without any name is called Anonymous Block. PL/ SQL block consists of various functions, library, procedures, trigger, packages etc.

The following points should be remembered while writing a PL/SQL program –

  • In PL/SQL the semicolon (;) is placed at the end of an SQL statement or PL/SQL control statement.
  • Section keyword DECLARE, BEGIN and EXCEPTION are not followed by semicolons.
  • END keyword and all other PL/SQL statements require a semicolon to terminate the statements.
  • Before you start creating code, define the goals and capabilities of your PL/SQL software.
  • Select names for constants, variables, and other identifiers that are both meaningful and descriptive.
  • To keep track of the modifications in your PL/SQL code, use version control tools (like Git).
  • Keep the use of universal variables to a minimum.
  • Observe the least privilege principle.
  • Use the COMMIT and ROLLBACK instructions to provide proper transaction management.

Features of PL/SQL :

The various features of PL/SQL are given below –

  • PL/SQL runs on various operating systems such as windows, Linux etc.
  • PL/SQL have an error-checking facility and displays user-friendly messages when an error occurs in a program.
  • It offers logging and debugging capabilities, including the capacity to use exception messages.
  • SQL can be executed dynamically.
  • When certain data events, such as INSERT, UPDATE, or DELETE actions on a table, occur, triggers are specialized forms of stored processes that are automatically invoked.
  • Multi-row queries are handled using cursors.
  • The declaration of variables and constants to store data values is supported.

What do you mean by PL/SQL Architecture?

The PL/SQL runtime system is a technology and not an independent product. This technology is actually like an engine that exhibits PL/SQL blocks, subprograms like functions and procedures. This engine can be installed in an Oracle Server or in application development tools such as Oracle Form Builder, Oracle Reports Builder etc. 
 

PL/SQL Architecture

PL/SQL can reside in two environments –

  1. The Oracle Server
  2. The Oracle tools

These two environments are independent of each other. In either environment, the PL/SQL engine accepts any valid PL/SQL block as input. The PL/SQL engine executes the procedural part of the statements and sends the SQL statement executer in the Oracle Server. A single transfer is required to send the block from the application to the Oracle Server, thus improving performance, especially in a Client-Server network. PL/SQL code can also be stored in the Oracle server as subprograms that can be referenced by any number of applications connected to the database.

Advantages of PL/SQL :

  • PL/SQL provides better performance.
  • PL/SQL has high Productivity.
  • It supports Object-Oriented Programming concepts.
  • It has Scalability and Manageability.
  • PL/SQL supports various Web Application Development tools.

Disadvantages of PL/SQL :

  • PL/SQL requires high memory.
  • Lacks of functionality debugging in stored procedures.


Next Article
Oracle Architecture
author
itskawal2000
Improve
Article Tags :
  • DBMS
  • SQL
  • dbms

Similar Reads

  • SQL Server Architecture
    Microsoft SQL Server is a widely used relational database management system (RDBMS) that organizations around the world rely on for managing and processing their data. It provides a scalable and reliable platform for managing large volumes of data, supporting a wide range of applications from small-
    5 min read
  • Architecture of MySQL
    MySQL is a Relational Database Management system which is free Open Source Software Under GNU License. It is also supported by Oracle Company . It is fast , scalable, easy to use database management System. MySQL support many operating system like Windows, Linux, MacOS etc. MySQL is a Structured Que
    6 min read
  • RDBMS Architecture
    RDBMS stands for Relational Database Management System and it implements SQL. In the real-world scenario, people use the Relational Database Management System to collect information and process it, to provide service. E.g. In a ticket processing system, details about us (e.g. age, gender) and our jo
    3 min read
  • Oracle Architecture
    Pre-requisites: Database Oracle Database is a relational database management system (RDBMS) that Oracle Corporation created and marketed. It is one of the most popular RDBMSs on the market and is used to store and retrieve data for a wide range of applications. Oracle Database is well-known for its
    5 min read
  • PostgreSQL - System Architecture
    PostgreSQL, often simply called Postgres, is an advanced open-source Object-Relational Database Management System (ORDBMS). It stands out due to its robust feature set, extensibility, and compliance with SQL standards. Originating as the successor to the POSTGRES system, one of the earliest database
    7 min read
  • PL/SQL Introduction
    PL/SQL (Procedural Language/Structured Query Language) is a block-structured language developed by Oracle that allows developers to combine the power of SQL with procedural programming constructs. The PL/SQL language enables efficient data manipulation and control-flow logic, all within the Oracle D
    7 min read
  • SQL for Data Science
    Mastering SQL (Structured Query Language) has become a fundamental skill for anyone pursuing a career in data science. As data plays an increasingly central role in business and technology, SQL has emerged as the most essential tool for managing and analyzing large datasets. Data scientists rely on
    7 min read
  • Characteristics of SQL
    Structured Query Language (SQL) is a standard language to write queries. It was developed under R Project by IBM. SQL has a basic grammar and syntax. It was declared as a standard language to use by American Standard National Institute(ANSI) and International Standard Organization(ISO). The function
    2 min read
  • DBMS Architecture 1-level, 2-Level, 3-Level
    A Database stores a lot of critical information to access data quickly and securely. Hence it is important to select the correct architecture for efficient data management. Database Management System (DBMS) architecture is crucial for efficient data management and system performance. It helps users
    6 min read
  • SQL Clusters
    In this article, we are going to cover the SQL cluster and will also cover some advantages and disadvantages of SQL clusters. Let's discuss one by one. Clusters in SQL are used to store data that is from different tables in the same physical data blocks. They are used if records from those tables ar
    2 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences