Перейти к контенту

Как создать хранимую процедуру в базе данных Oracle

Хранимые процедуры являются сегментом подпрограмм операторов SQL, которые хранятся в каталоге SQL. Все приложения, которые могут обращаться к реляционным базам данных Java Python PHP и т. д., могут обращаться к хранимым процедурам.

Хранимые процедуры — это подпрограммы, сегмент операторов SQL, которые хранятся в каталоге SQL. Все приложения, которые могут обращаться к реляционным базам данных (Java, Python, PHP и т. Д.), могут обращаться к хранимым процедурам.

 

Они содержат параметры IN и OUT или оба. Они могут возвращать наборы результатов, если вы используете операторы SELECT или возвращать несколько наборов результатов.

Чтобы создать хранимую процедуру в базе данных (MySQL) с использованием JDBC API, вам необходимо:

  1. Зарегистрируйте драйвер: зарегистрируйте класс драйвера с помощью метода registerDriver() класса DriverManager. Передайте ему имя класса драйвера в качестве параметра.
  2. Установите соединение: подключитесь к базе данных с помощью метода getConnection() класса DriverManager. Передав URL-адрес (String), имя пользователя (String), пароль (String) в качестве параметров.
  3. Create Statement: создайте объект Statement с помощью метода createStatement() интерфейса Connection.
  4. Выполнить запрос: выполнить вызов для создания хранимых процедур, используя метод execute() интерфейса Statement.

Давайте создадим таблицу в базе данных Oracle, используя оператор CREATE, как показано ниже:

CREATE TABLE Dispatches(
   PRODUCTNAME VARCHAR2(20),
   CUSTOMERNAME VARCHAR2(20),
   DISPATCHDATE DATE,
   DELIVERYTIME TIMESTAMP(6),
   PRICE NUMBER(38),
   LOCATION VARCHAR2(20)
);

Теперь мы вставим 5 записей в таблицу диспетчеризации, используя операторы INSERT.

insert into dispatches values('Key-Board', 'Raja', TO_DATE('2019-09-01', 'yyyy/mm/dd'), TO_DATE('11:00:00', 'hh:mi:ss'), 7000, 'India');
insert into dispatches values('Earphones', 'Roja', TO_DATE('2019-05-01', 'yyyy/mm/dd'), TO_DATE('11:00:00', 'hh:mi:ss'), 2000, 'Vishakhapatnam');
insert into dispatches values('Mouse', 'Puja', TO_DATE('2019-03-01', 'yyyy/mm/dd'), TO_DATE('10:59:59', 'hh:mi:ss'), 3000, 'Vijayawada');
insert into dispatches values('Mobile', 'Vanaja', TO_DATE('2019-03-01', 'yyyy/mm/dd'), TO_DATE('10:10:52', 'hh:mi:ss'), 9000, 'Chennai');
insert into dispatches values('Headset', 'Jalaja', TO_DATE('2019-04-06', 'yyyy/mm/dd'), TO_DATE('11:08:59', 'hh:mi:ss' ), 6000, 'Goa');

Следующая программа JDBC устанавливает соединение с базой данных Oracle и создает процедуру с именем retrieveData, которая извлекает содержимое созданной выше таблицы.

Пример

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class CreatingStoredProcedures_Oracle {
   public static void main(String args[]) throws SQLException {
      //Registering the Driver
      DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
      //Getting the connection
      String oracleUrl = "jdbc:oracle:thin:@localhost:1521/xe";
      Connection con = DriverManager.getConnection(oracleUrl, "system", "password");
      System.out.println("Connection established......");
      //Creating the Statement
      Statement stmt = con.createStatement();
      //Query to create stored procedures
      String query = "CREATE PROCEDURE retrieveData() " +
      "BEGIN "+
         " SELECT * FROM Customers; "+
      "END";
      //Executing the query
      stmt.execute(query);
      System.out.println("Procedure Created......");
   }
}

Вывод

Connection established......
Procedure Created......

Оцени статью

Средняя оценка / 5. Количество голосов:

Спасибо, помогите другим - напишите комментарий, добавьте информации к статье.

Или поделись статьей

Видим, что вы не нашли ответ на свой вопрос.

Помогите улучшить статью.

 

Пока нет комментариев.

Добавить комментарий

Ваш e-mail не будет опубликован.

СайдбарКомментарии (0)