{"id":1418,"date":"2017-11-09T09:56:55","date_gmt":"2017-11-09T16:56:55","guid":{"rendered":"https:\/\/oracletutorial.com\/?page_id=1418"},"modified":"2023-10-07T21:28:55","modified_gmt":"2023-10-08T04:28:55","slug":"plsql-tutorial","status":"publish","type":"page","link":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/","title":{"rendered":"PL\/SQL Tutorial"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"alignright is-resized\"><img decoding=\"async\" src=\"https:\/\/www.oracletutorial.com\/wp-content\/uploads\/2017\/11\/PLSQL-Tutorial.png\" alt=\"PL\/SQL Tutorial\" class=\"wp-image-1575\" style=\"width:200px\" width=\"200\" title=\"PL\/SQL Tutorial\"\/><\/figure>\n<\/div>\n\n\n<p>If you&#8217;re a developer or a database administrator looking for a way to master PL\/SQL programming language, these PL\/SQL tutorial series are for you.<\/p>\n\n\n\n<p>These PL\/SQL tutorial series contain the information that every developer and database administrator should have to efficiently use PL\/SQL in their daily tasks.<\/p>\n\n\n\n<p>As you go through the entire tutorial series, you will acquire a lot of new knowledge about PL\/SQL programming. These PL\/SQL tutorial series present the best practices in PL\/SQL programming language. The best part is that each tutorial contains a lot of examples and helpful scripts.<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='getting-started-with-plsql'>Section 1. Getting started with PL\/SQL <a href=\"#getting-started-with-plsql\" class=\"anchor\" id=\"getting-started-with-plsql\" title=\"Anchor for Section 1. Getting started with PL\/SQL\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/what-is-plsql\/\">What is PL\/SQL<\/a> &#8211;&nbsp; introduce you to PL\/SQL programming language and its architecture.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-anonymous-block\/\">Anonymous Block<\/a> &#8211; explain PL\/SQL anonymous blocks and show you how to execute an anonymous block in SQL*Plus and Oracle SQL Developer tools.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-data-types\/\">Data Types<\/a> &#8211; give you a brief overview of PL\/SQL data types including number, Boolean, character, and datetime.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-variables\/\">Variables<\/a> &#8211; introduce you to PL\/SQL variables and show you how to manipulate variables in programs efficiently.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-comments\/\">Comments<\/a> &#8211; use single-line or multi-line comments to document your code to make it more readable and maintainable.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-constants\/\">Constants<\/a> &#8211; learn how to declare constants that hold values that remain unchanged throughout the execution of the program.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='conditional-control'>Section 2. Conditional control <a href=\"#conditional-control\" class=\"anchor\" id=\"conditional-control\" title=\"Anchor for Section 2. Conditional control\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-if\/\">IF statements<\/a> &#8211; introduce you to various IF statement to either execute or skip a sequence of statements based on a condition.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-case-statement\/\">CASE statements<\/a> &#8211; learn how to choose one sequence of statements out of many possible sequences to execute.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-goto\/\">GOTO<\/a> &#8211; explain the GOTO statement and show how to use it to transfer control\u00a0to a labeled block or statement.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-null\/\">NULL&nbsp;statement<\/a> &#8211; show you how to use the NULL statement to make the code more clear.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='iterative-processing-with-loops'>Section 3. Iterative processing with loops <a href=\"#iterative-processing-with-loops\" class=\"anchor\" id=\"iterative-processing-with-loops\" title=\"Anchor for Section 3. Iterative processing with loops\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-loop\/\">Basic LOOP statement<\/a> &#8211; show you how to use the basic LOOP statement to execute a sequence of code multiple times.<\/li>\n\n\n\n<li>Numeric <a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-for-loop\/\">FOR LOOP<\/a>&nbsp;statement &#8211; learn&nbsp;how to execute a sequence of statements a fixed number of times.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-while-loop\/\">WHILE loop<\/a> &#8211; execute a sequence of statements as long as a specified condition is TRUE.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-continue\/\">CONTINUE<\/a> &#8211; use the CONTINUE statement to skip the current iteration of the loop and immediately continue the next iteration.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='select-into'>Section 4.&nbsp; Select Into <a href=\"#select-into\" class=\"anchor\" id=\"select-into\" title=\"Anchor for Section 4.&nbsp; Select Into\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-select-into\/\">SELECT INTO<\/a> &#8211; learn how to fetch a single row from a table into variables.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='exception-handlers'>Section 5. Exception handlers <a href=\"#exception-handlers\" class=\"anchor\" id=\"exception-handlers\" title=\"Anchor for Section 5. Exception handlers\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-exception\/\">Exception<\/a> &#8211;&nbsp;&nbsp;show you how to handle exceptions in a block.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-raise\/\">Raise exceptions<\/a> &#8211; learn how to raise an exception explicitly with the <code>RAISE<\/code> statement.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-raise_application_error\/\">Using raise_application_error<\/a> &#8211; raise an exception with a user-defined error message.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-exception-propagation\/\">Exception propagation<\/a> &#8211; learn about how PL\/SQL propagates an unhandled exception from the current block to its enclosing block.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-sqlcode\/\">Handling other unhandled exceptions<\/a> &#8211; show you how to use the <code>SQLCODE<\/code> and <code>SQLERRM<\/code> functions to handle other unhandled exceptions.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='records'>Section 6. Records <a href=\"#records\" class=\"anchor\" id=\"records\" title=\"Anchor for Section 6. Records\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-record\/\">Record<\/a> &#8211; learn how to use record type to make your code more efficient by shifting operations from field-level to record-level.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='cursors'>Section 7. Cursors <a href=\"#cursors\" class=\"anchor\" id=\"cursors\" title=\"Anchor for Section 7. Cursors\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-cursor\/\">Cursor<\/a>&nbsp;&#8211; introduce you to cursors including implicit and explicit cursors and shows you how to use them effectively to fetch data from a table.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-cursor-for-loop\/\">Cursor FOR LOOP<\/a> &#8211; show you how to use the cursor <code>FOR LOOP<\/code> statement to fetch and process each row from a cursor.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-cursor-with-parameters\/\">Cursor with parameters<\/a> &#8211; learn how to use the cursor with parameters to fetch data according to the input arguments passed to the cursor each time it is opened.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-cursor-variables\/\">Cursor Variables with REF CURSOR<\/a> &#8211; guide you on how to use the cursor variable with ref cursor.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-cursor-for-update\/\">Updatable cursor<\/a> &#8211; introduce you to the Oracle updatable cursor to update data in the table.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='stored-procedures-and-functions'>Section 8. Stored procedures and Functions <a href=\"#stored-procedures-and-functions\" class=\"anchor\" id=\"stored-procedures-and-functions\" title=\"Anchor for Section 8. Stored procedures and Functions\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-procedure\/\">Procedure<\/a>&nbsp;&#8211; a step-by-step guide to create, compile and execute a procedure from Oracle SQL Developer.<\/li>\n\n\n\n<li><div><div><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-implicit-statement-results\/\">Implicit statement results<\/a>&nbsp; &#8211; learn how to return one or more result sets from a procedure. <\/div><\/div><\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-function\/\">Function<\/a> &#8211; show you how to develop a PL\/SQL function and explain to you various ways to call a function.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-cursor-variables\/\">Cursor variables<\/a> &#8211; learn how to use cursor variables using <code>REF CURSOR<\/code> type.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='packages'>Section 9. Packages <a href=\"#packages\" class=\"anchor\" id=\"packages\" title=\"Anchor for Section 9. Packages\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-package\/\">PL\/SQL package<\/a> &#8211; introduce you to PL\/SQL packages and explain to you the advantages of using them in your application development.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-package-specification\/\">Package specification<\/a> &#8211; show you step-by-step how to create a package specification.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-package-body\/\">Package body<\/a> &#8211; learn how to create a package body.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-drop-package\/\">Drop Package<\/a> &#8211; illustrate how to drop a PL\/SQL package.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='triggers'>Section 10. Triggers <a href=\"#triggers\" class=\"anchor\" id=\"triggers\" title=\"Anchor for Section 10. Triggers\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-trigger\/\">Triggers<\/a> &#8211; introduce you to the Oracle trigger and show you how to create a new trigger.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-statement-level-triggers\/\">Statement-level triggers<\/a> &#8211; learn how to use statement-level triggers to enforce additional security to the transaction.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-row-level-triggers\/\">Row-level triggers<\/a> &#8211; show you how to use row-level triggers for data-related activities.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-instead-of-triggers\/\">INSTEAD OF triggers<\/a> &#8211; learn how to use the <code>INSTEAD OF<\/code> triggers to update tables via their views which cannot be modified directly through DML statements.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-disable-triggers\/\">Disable triggers<\/a> &#8211; show you how to disable a trigger or all triggers of a table.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-enable-triggers\/\">Enable triggers<\/a> &#8211; describe steps to enable a trigger or all triggers of a table.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/oracle-drop-trigger\/\">Drop Triggers<\/a> &#8211; guide you on how to drop a trigger from the database.<\/li>\n\n\n\n<li>How to fix the <a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/mutating-table-error-in-oracle\/\">mutating table error<\/a> &#8211; learn about the mutating table error and how to fix it using a compound trigger.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id='plsql-collections'>Section 11. PL\/SQL Collections <a href=\"#plsql-collections\" class=\"anchor\" id=\"plsql-collections\" title=\"Anchor for Section 11. PL\/SQL Collections\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-associative-array\/\">Associative Arrays<\/a> &#8211; introduce you to associative arrays including declaring associative arrays, populating values, and iterating over array elements.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-nested-tables\/\">Nested Tables<\/a> &#8211; learn about nested tables.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/plsql-varray\/\">VARRAY<\/a> &#8211; learn about variable-sized arrays and how to manipulate their elements effectively.<\/li>\n<\/ul>\n<\/div><\/div>\n<div class=\"helpful-block-content\" data-title=\"\">\n\t<header>\n\t\t<div class=\"wth-question\">Was this tutorial helpful?<\/div>\n\t\t<div class=\"wth-thumbs\">\n\t\t\t<button\n\t\t\t\tdata-post=\"1418\"\n\t\t\t\tdata-post-url=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/\"\n\t\t\t\tdata-post-title=\"PL\/SQL Tutorial\"\n\t\t\t\tdata-response=\"1\"\n\t\t\t\tclass=\"wth-btn-rounded wth-yes-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t\tclass=\"feather feather-thumbs-up block w-full h-full\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> Yes <\/span>\n\t\t\t<\/button>\n\n\t\t\t<button\n\t\t\t\tdata-response=\"0\"\n\t\t\t\tdata-post=\"1418\"\n\t\t\t\tdata-post-url=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/\"\n\t\t\t\tdata-post-title=\"PL\/SQL Tutorial\"\n\t\t\t\tclass=\"wth-btn-rounded wth-no-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> No <\/span>\n\t\t\t<\/button>\n\t\t<\/div>\n\t<\/header>\n\n\t<div class=\"wth-form hidden\">\n\t\t<div class=\"wth-form-wrapper\">\n\t\t\t<div class=\"wth-title\"><\/div>\n\t\t\t\n\t\t\t<textarea class=\"wth-message\"><\/textarea>\n\n\t\t\t<button class=\"btn btn-primary wth-btn-submit\">Send<\/button>\n\t\t\t<button class=\"btn wth-btn-cancel\">Cancel<\/button>\n\t\t\n\t\t<\/div>\n\t<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>This PL\/SQL Tutorial section teaches you how to use PL\/SQL programming language to develop modular and procedural programs in Oracle Database.<\/p>\n","protected":false},"author":1,"featured_media":3595,"parent":0,"menu_order":8,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1418","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PL\/SQL Tutorial - Master PL\/SQL Programming Quickly and Easily<\/title>\n<meta name=\"description\" content=\"This PL\/SQL Tutorial section teaches you how to use PL\/SQL programming language to develop modular and procedural programs in Oracle Database.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PL\/SQL Tutorial - Master PL\/SQL Programming Quickly and Easily\" \/>\n<meta property=\"og:description\" content=\"This PL\/SQL Tutorial section teaches you how to use PL\/SQL programming language to develop modular and procedural programs in Oracle Database.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.oracletutorial.com\/plsql-tutorial\/\" \/>\n<meta property=\"og:site_name\" content=\"Oracle Tutorial\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-08T04:28:55+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/\",\"url\":\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/\",\"name\":\"PL\\\/SQL Tutorial - Master PL\\\/SQL Programming Quickly and Easily\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.oracletutorial.com\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/plsql.svg\",\"datePublished\":\"2017-11-09T16:56:55+00:00\",\"dateModified\":\"2023-10-08T04:28:55+00:00\",\"description\":\"This PL\\\/SQL Tutorial section teaches you how to use PL\\\/SQL programming language to develop modular and procedural programs in Oracle Database.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.oracletutorial.com\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/plsql.svg\",\"contentUrl\":\"https:\\\/\\\/www.oracletutorial.com\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/plsql.svg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/plsql-tutorial\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.oracletutorial.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PL\\\/SQL Tutorial\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.oracletutorial.com\\\/#website\",\"url\":\"https:\\\/\\\/www.oracletutorial.com\\\/\",\"name\":\"Oracle Tutorial\",\"description\":\"Oracle Tutorial\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.oracletutorial.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PL\/SQL Tutorial - Master PL\/SQL Programming Quickly and Easily","description":"This PL\/SQL Tutorial section teaches you how to use PL\/SQL programming language to develop modular and procedural programs in Oracle Database.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/","og_locale":"en_US","og_type":"article","og_title":"PL\/SQL Tutorial - Master PL\/SQL Programming Quickly and Easily","og_description":"This PL\/SQL Tutorial section teaches you how to use PL\/SQL programming language to develop modular and procedural programs in Oracle Database.","og_url":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/","og_site_name":"Oracle Tutorial","article_modified_time":"2023-10-08T04:28:55+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/","url":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/","name":"PL\/SQL Tutorial - Master PL\/SQL Programming Quickly and Easily","isPartOf":{"@id":"https:\/\/www.oracletutorial.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/#primaryimage"},"image":{"@id":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/www.oracletutorial.com\/wp-content\/uploads\/2021\/04\/plsql.svg","datePublished":"2017-11-09T16:56:55+00:00","dateModified":"2023-10-08T04:28:55+00:00","description":"This PL\/SQL Tutorial section teaches you how to use PL\/SQL programming language to develop modular and procedural programs in Oracle Database.","breadcrumb":{"@id":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.oracletutorial.com\/plsql-tutorial\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/#primaryimage","url":"https:\/\/www.oracletutorial.com\/wp-content\/uploads\/2021\/04\/plsql.svg","contentUrl":"https:\/\/www.oracletutorial.com\/wp-content\/uploads\/2021\/04\/plsql.svg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.oracletutorial.com\/plsql-tutorial\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.oracletutorial.com\/"},{"@type":"ListItem","position":2,"name":"PL\/SQL Tutorial"}]},{"@type":"WebSite","@id":"https:\/\/www.oracletutorial.com\/#website","url":"https:\/\/www.oracletutorial.com\/","name":"Oracle Tutorial","description":"Oracle Tutorial","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.oracletutorial.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/pages\/1418","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/comments?post=1418"}],"version-history":[{"count":0,"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/pages\/1418\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/media\/3595"}],"wp:attachment":[{"href":"https:\/\/www.oracletutorial.com\/wp-json\/wp\/v2\/media?parent=1418"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}