mysql에서는 CALL 문을 사용하여 저장 프로시저를 호출할 수 있습니다. 이 문은 저장 프로시저의 이름과 여기에 전달되어야 하는 매개변수를 받습니다. 구문은 "CALL sp_name([parameter[... ]]);".
이 튜토리얼의 운영 환경: windows7 시스템, mysql8 버전, Dell G3 컴퓨터.
저장 프로시저 호출
CALL 문은 MySQL에서 저장 프로시저를 호출하는 데 사용됩니다. 저장 프로시저가 호출되면 데이터베이스 시스템은 저장 프로시저의 SQL 문을 실행하고 그 결과를 출력 값으로 반환합니다.
CALL 문은 저장 프로시저의 이름과 여기에 전달되어야 하는 매개 변수를 받습니다. 기본 구문은 다음과 같습니다.
CALL sp_name([parameter[...]]);
여기서 sp_name은 저장 프로시저의 이름을 나타내고 매개 변수는 저장 프로시저.
예제 1:
저장 프로시저 생성
ShowStuScore라는 저장 프로시저를 생성합니다. 저장 프로시저의 기능은 학생 성적 정보 테이블에서 학생의 성적 정보를 쿼리하는 것입니다
mysql> DELIMITER // mysql> CREATE PROCEDURE ShowStuScore() -> BEGIN -> SELECT * FROM tb_students_score; -> END // Query OK, 0 rows affected (0.09 sec)
결과. ShowStuScore 저장 프로시저가 성공적으로 생성되었습니다.
GetScoreByStu라는 저장 프로시저를 생성합니다. 입력 매개변수는 학생의 이름입니다. 저장 프로시저의 기능은 입력된 학생 이름
mysql> DELIMITER // mysql> CREATE PROCEDURE GetScoreByStu -> (IN name VARCHAR(30)) -> BEGIN -> SELECT student_score FROM tb_students_score -> WHERE student_name=name; -> END // Query OK, 0 rows affected (0.01 sec)
저장 프로시저 호출
ShowStuScore 및 GetScoreByStu
mysql> DELIMITER ; mysql> CALL ShowStuScore(); +--------------+---------------+ | student_name | student_score | +--------------+---------------+ | Dany | 90 | | Green | 99 | | Henry | 95 | | Jane | 98 | | Jim | 88 | | John | 94 | | Lily | 100 | | Susan | 96 | | Thomas | 93 | | Tom | 89 | +--------------+---------------+ 10 rows in set (0.00 sec) Query OK, 0 rows affected (0.02 sec) mysql> CALL GetScoreByStu('Green'); +---------------+ | student_score | +---------------+ | 99 | +---------------+ 1 row in set (0.03 sec) Query OK, 0 rows affected (0.03 sec)
저장 프로시저는 실제로 함수이므로 매개 변수가 전달되지 않더라도 저장 프로시저 이름 뒤에 () 기호가 있어야 합니다.
【관련 추천: mysql 비디오 튜토리얼】
위 내용은 mysql에서 저장 프로시저를 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!