search
HomeDatabaseOracleHow to make a call with parameters in Oracle stored procedure

Oracle stored procedure is a pre-compiled reusable SQL statement that is stored in the database and can be executed and called at any time. In Oracle stored procedures, you can use parameters to achieve more flexible calling. This article explains how to use parameters in Oracle stored procedures.

Create a stored procedure and define parameters

In Oracle database, creating a stored procedure requires the use of the CREATE PROCEDURE statement. Here is a simple example:

CREATE OR REPLACE PROCEDURE get_employee_details(
    employee_id IN NUMBER,
    employee_name OUT VARCHAR2,
    hire_date OUT DATE,
    salary OUT NUMBER
)
AS
BEGIN
    SELECT e.employee_name, e.hire_date, e.salary 
    INTO employee_name, hire_date, salary
    FROM employees e
    WHERE e.employee_id = employee_id;
END;

The above code creates a stored procedure named get_employee_details that has four parameters: employee_id(IN input parameters of type), employee_name, hire_date, and salary (output parameters of type OUT). The function of the stored procedure is to query the employee's detailed information based on the employee_id parameter and store the query results in the output parameter.

Call stored procedure

When the stored procedure is successfully created, you can use the EXECUTE statement to call it. The following is the code to call the stored procedure:

DECLARE
    emp_name VARCHAR2(50);
    emp_hire_date DATE;
    emp_salary NUMBER;
BEGIN
    get_employee_details(101, emp_name, emp_hire_date, emp_salary);
    DBMS_OUTPUT.PUT_LINE('Employee Name : ' || emp_name);
    DBMS_OUTPUT.PUT_LINE('Hire Date : ' || emp_hire_date);
    DBMS_OUTPUT.PUT_LINE('Salary : ' || emp_salary);
END;

In the above code, first declare three variables emp_name, emp_hire_date and emp_salary, Then call the stored procedure get_employee_details and pass in the parameter 101, and assign the output parameters to the variables declared above. Finally, use the PUT_LINE function in the DBMS_OUTPUT package to output the query results.

It should be noted that the DECLARE and BEGIN statements are necessary because they represent the beginning and end of a code block. In the code block, you can declare variables, call stored procedures, execute various SQL statements, etc.

Types of parameters

When defining parameters of a stored procedure, you can use the following types:

  • IN: Indicates input parameters, these Parameters are used to pass values ​​into stored procedures.
  • OUT: Indicates output parameters, which are used to return values ​​from stored procedures.
  • IN OUT: Indicates that it is both an input parameter and an output parameter. These parameters can both pass values ​​to and return values ​​from stored procedures.

In addition to the above types, you can also use the NOCOPY keyword to define parameters, which can avoid memory copying during parameter transfer, thereby improving execution efficiency.

Application scenarios

In actual development, parameter calling of stored procedures is very common, and it can be applied in multiple scenarios. The following are some typical application scenarios:

  • Parameterized query: In the stored procedure, input parameters can be defined so that the stored procedure can execute different query statements based on different input parameters, thereby achieving parameterization. Inquire.
  • Batch operation: In the stored process, you can define input parameters and output parameters, so that the stored process can perform batch operations based on the input parameters, and at the same time store the processing results in the output parameters, reducing the number of subsequent operations.
  • Transaction processing: In the stored procedure, input parameters can be used to control the submission or rollback of the transaction, thereby achieving a more flexible transaction processing method.

Summary

This article introduces the method of using parameter calls in Oracle stored procedures. Typically, parameterized calls to stored procedures can greatly improve code reusability and flexibility, and can provide applications with more flexible functionality. Therefore, in actual development, parameterized calls of stored procedures should be fully utilized to improve system performance and maintainability.

The above is the detailed content of How to make a call with parameters in Oracle stored procedure. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Oracle's Software Suite: Products and Services ExplainedOracle's Software Suite: Products and Services ExplainedMay 09, 2025 am 12:12 AM

Oracle's software suite includes database management, ERP, CRM, etc., helps enterprises optimize operations, improve efficiency, and reduce costs. 1. OracleDatabase manages data, 2. OracleERPCloud handles finance, human resources and supply chain, 3. Use OracleSCMCloud to optimize supply chain management, 4. Ensure data flow and consistency through APIs and integration tools.

MySQL vs. Oracle: Licensing, Features, and BenefitsMySQL vs. Oracle: Licensing, Features, and BenefitsMay 08, 2025 am 12:05 AM

The main difference between MySQL and Oracle is licenses, features, and advantages. 1. License: MySQL provides a GPL license for free use, and Oracle adopts a proprietary license, which is expensive. 2. Function: MySQL has simple functions and is suitable for web applications and small and medium-sized enterprises. Oracle has powerful functions and is suitable for large-scale data and complex businesses. 3. Advantages: MySQL is open source free, suitable for startups, and Oracle is reliable in performance, suitable for large enterprises.

MySQL vs. Oracle: Selecting the Right Database SystemMySQL vs. Oracle: Selecting the Right Database SystemMay 07, 2025 am 12:09 AM

MySQL and Oracle have significant differences in performance, cost and usage scenarios. 1) Performance: Oracle performs better in complex queries and high concurrency environments. 2) Cost: MySQL is open source, low cost, suitable for small and medium-sized projects; Oracle is commercialized, high cost, suitable for large enterprises. 3) Usage scenarios: MySQL is suitable for web applications and small and medium-sized enterprises, and Oracle is suitable for complex enterprise-level applications. When choosing, you need to weigh the specific needs.

Oracle Software: Maximizing Efficiency and PerformanceOracle Software: Maximizing Efficiency and PerformanceMay 06, 2025 am 12:07 AM

Oracle software can improve performance in a variety of ways. 1) Optimize SQL queries and reduce data transmission; 2) Appropriately manage indexes to balance query speed and maintenance costs; 3) Reasonably configure memory, optimize SGA and PGA; 4) Reduce I/O operations and use appropriate storage devices.

Oracle: Enterprise Software and Cloud ComputingOracle: Enterprise Software and Cloud ComputingMay 05, 2025 am 12:01 AM

Oracle is so important in the enterprise software and cloud computing sectors because of its comprehensive solutions and strong technical support. 1) Oracle provides a wide range of product lines from database management to ERP, 2) its cloud computing services such as OracleCloudPlatform and Infrastructure help enterprises achieve digital transformation, 3) Oracle database stability and performance and seamless integration of cloud services improve enterprise efficiency.

MySQL vs. Oracle: A Comparative Analysis of Database SystemsMySQL vs. Oracle: A Comparative Analysis of Database SystemsMay 04, 2025 am 12:13 AM

MySQL and Oracle have their own advantages and disadvantages, and comprehensive considerations should be taken into account when choosing: 1. MySQL is suitable for lightweight and easy-to-use needs, suitable for web applications and small and medium-sized enterprises; 2. Oracle is suitable for powerful functions and high reliability needs, suitable for large enterprises and complex business systems.

MySQL vs. Oracle: Understanding Licensing and CostMySQL vs. Oracle: Understanding Licensing and CostMay 03, 2025 am 12:19 AM

MySQL uses GPL and commercial licenses for small and open source projects; Oracle uses commercial licenses for enterprises that require high performance. MySQL's GPL license is free, and commercial licenses require payment; Oracle license fees are calculated based on processors or users, and the cost is relatively high.

Oracle: From Databases to Cloud ServicesOracle: From Databases to Cloud ServicesMay 02, 2025 am 12:05 AM

Oracle's evolution from database to cloud services demonstrates its strong technical strength and market insight. 1. Oracle originated in the 1970s and is famous for its relational database management system, and has launched innovative functions such as PL/SQL. 2. The core of Oracle database is relational model and SQL optimization, which supports multi-tenant architecture. 3. Oracle cloud services provide IaaS, PaaS and SaaS through OCI, and AutonomousDatabase performs well. 4. When using Oracle, you need to pay attention to the complex licensing model, performance optimization and data security issues in cloud migration.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools