>  기사  >  데이터 베이스  >  MySQL 저장 프로시저는 내부의 다른 MySQL 저장 프로시저를 어떻게 호출합니까?

MySQL 저장 프로시저는 내부의 다른 MySQL 저장 프로시저를 어떻게 호출합니까?

王林
王林앞으로
2023-09-05 08:45:121204검색

MySQL 저장 프로시저는 내부의 다른 MySQL 저장 프로시저를 어떻게 호출합니까?

MySQL 저장 프로시저는 내부에서 다른 MySQL 저장 프로시저를 호출할 가능성이 높습니다. 이를 설명하기 위해 하나의 저장 프로시저가 다른 저장 프로시저를 호출하여 last_insert_id를 찾는 예를 들어 보겠습니다.

Example

mysql> Create table employee.tbl(Id INT NOT NULL AUTO_INCREMENT, Name Varchar(30) NOT NULL, PRIMARY KEY(id))//
Query OK, 0 rows affected (3.87 sec)

mysql> Create Procedure insert1()
   -> BEGIN insert into employee.tbl(name) values ('Ram');
   -> END//
Query OK, 0 rows affected (0.10 sec)

이제 다음 프로시저 insert2()에서는 첫 번째 저장 프로시저, 즉 insert1()을 호출합니다.

mysql> Create Procedure insert2()
   -> BEGIN
   -> CALL insert1();
   -> Select last_insert_id();
   -> END //
Query OK, 0 rows affected (0.11 sec)
mysql> Delimiter ;

mysql> Call insert2();
+------------------+
| last_insert_id() |
+------------------+
| 1                |
+------------------+
1 row in set (0.36 sec)
Query OK, 0 rows affected (0.37 sec)

위 결과 집합을 보면 insert1()을 호출하면 Employee.tbl이라는 테이블에 첫 번째 값이 삽입되고, 두 번째 저장 프로시저에서 insert2()를 호출하면 last_insert_id()가 선택되면 출력 1.

위 내용은 MySQL 저장 프로시저는 내부의 다른 MySQL 저장 프로시저를 어떻게 호출합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제