저장 프로시저의 장점은 다음과 같습니다.
저장 프로시저를 컴파일하여 저장하기 때문에 프로시저를 호출할 때마다 응답이 빠릅니다.
필요한 모든 SQL 문을 하나의 프로시저로 그룹화하고 즉시 실행할 수 있습니다.
프로세스가 데이터베이스 서버에 저장되므로 클라이언트보다 빠릅니다. 이를 사용하면 모든 복잡한 쿼리를 수행할 수 있어 속도가 더 빨라집니다.
프로시저를 사용하면 코드 중복을 피할 수 있으며 이를 통해 저장 함수 호출과 같은 추가 SQL 기능을 사용할 수 있습니다.
저장 프로시저를 컴파일한 후에는 이를 다양한 애플리케이션에서 사용할 수 있습니다. 변경이 필요한 경우 애플리케이션 코드를 건드리지 않고 간단히 프로세스를 변경할 수 있습니다.
Java에서 PL/SQL 저장 프로시저를 호출할 수 있고, PL/SQL에서 Java 저장 프로시저를 호출할 수 있습니다.
다음 설명과 함께 "Employees"라는 테이블을 생성한다고 가정합니다.
+----------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+--------------+------+-----+---------+-------+ | Name | varchar(255) | YES | | NULL | | | Salary | int(11) | NO | | NULL | | | Location | varchar(255) | YES | | NULL | | +----------+--------------+------+-----+---------+-------+
아래 표시된 대로 Employees 테이블에 데이터를 삽입하는 myProcedure라는 프로시저가 있다고 가정합니다.
Create procedure myProcedure (IN name VARCHAR(30), IN sal INT, IN loc VARCHAR(45)) -> BEGIN -> INSERT INTO Employees(Name, Salary, Location) VALUES (name, sal, loc); -> END //
다음 JDBC 프로그램 호출 위의 Java 저장 프로시저.
import java.sql.CallableStatement; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class Example { public static void main(String args[]) throws SQLException { //Registering the Driver DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //Getting the connection String mysqlUrl = "jdbc:mysql://localhost/testdb"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); //Preparing a CallableStatement CallableStatement cstmt = con.prepareCall("{call myProcedure(?, ?, ?)}"); cstmt.setString(1, "Amit"); cstmt.setInt(2, 3000); cstmt.setString(3, "Hyderabad"); cstmt.execute(); cstmt.setString(1, "Kalyan"); cstmt.setInt(2, 4000); cstmt.setString(3, "Vishakhapatnam"); cstmt.execute(); } }
Connection established......
Employees 테이블의 내용을 확인하면 아래와 같이 새로 추가된 행을 확인할 수 있습니다.
+-----------+--------+----------------+ | Name | Salary | Location | +-----------+--------+----------------+ | Amit | 3000 | Hyderabad | | Kalyan | 4000 | Vishakhapatnam | +-----------+--------+----------------+
위 내용은 저장 프로시저의 장점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!