작성 방법은 "CREATE PROCEDURE 프로세스 이름([프로세스 매개 변수]) 프로세스 본문 [프로세스 매개 변수] 형식 [IN|OUT|INOUT] 매개 변수 이름 유형"입니다. 프로시저 이름은 내장 함수와 동일한 이름을 선택하지 않도록 해야 합니다. 그렇지 않으면 프로시저 본문이 BEGIN으로 시작하고 END로 끝납니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, mysql 버전 5.8, Dell G3 컴퓨터.
(권장 튜토리얼: mysql 비디오 튜토리얼)
MySQL 저장 프로시저는 SQL 문의 모음입니다. 예를 들어 때로는 대규모의 SQL 문이 필요하거나 작성 과정에서 일부 변수를 설정해야 할 수도 있습니다. SQL 문 값을 저장하려면 지금은 저장 프로시저를 작성하는 것이 완전히 필요합니다.
저장 프로시저를 작성하는 것은 간단한 문제가 아니지만 저장 프로시저를 사용하면 작업을 단순화하고 중복되는 작업 단계를 줄이는 동시에 작업 중 오류를 줄이고 효율성을 높일 수 있습니다. 가능한 과정.
다음에서는 주로 저장 프로시저를 생성하는 방법을 소개합니다.
CREATE PROCEDURE 문을 사용하여 저장 프로시저를 생성할 수 있습니다. 구문 형식은 다음과 같습니다.
CREATE PROCEDURE <过程名> ( [过程参数[,…] ] ) <过程体> [过程参数[,…] ] 格式 [ IN | OUT | INOUT ] <参数名> <类型>
구문 설명은 다음과 같습니다.
1) 프로시저 이름
저장 프로시저의 이름입니다. 기본적으로 현재 데이터베이스에 생성됩니다. 특정 데이터베이스에 저장 프로시저를 생성해야 하는 경우 이름 앞에 데이터베이스 이름(db_name.sp_name)을 추가합니다.
이름은 MySQL 내장 함수와 동일한 이름을 선택하지 않도록 해야 합니다. 그렇지 않으면 오류가 발생합니다.
2) 프로세스 매개변수
프로세스의 매개변수 목록을 저장합니다. 그 중
MySQL 저장 프로시저는 각각 세 가지 키워드 IN, OUT 및 INOUT으로 식별되는 세 가지 유형의 매개변수, 즉 입력 매개변수, 출력 매개변수 및 입력/출력 매개변수를 지원합니다. 그 중 입력 매개변수는 저장 프로시저에 전달될 수 있고, 출력 매개변수는 저장 프로시저가 연산 결과를 반환해야 할 때 사용되며, 입/출력 매개변수는 입력 매개변수와 출력 매개변수로 모두 사용될 수 있다.
매개변수 이름은 데이터 테이블의 열 이름과 동일하면 안 됩니다. 그렇지 않으면 오류 메시지가 반환되지 않더라도 저장 프로시저의 SQL 문은 매개 변수 이름을 열 이름으로 처리합니다. , 예측할 수 없는 결과를 초래합니다.
3) 프로시저 본문
저장 프로시저 본문이라고도 하는 저장 프로시저의 주요 부분에는 프로시저 호출 시 실행해야 하는 SQL 문이 포함되어 있습니다. 이 섹션은 BEGIN 키워드로 시작하고 END 키워드로 끝납니다. 저장 프로시저 본문에 SQL 문이 하나만 있는 경우 BEGIN-END 플래그를 생략할 수 있습니다.
예:
ShowStuScore라는 저장 프로시저를 만듭니다. 저장 프로시저의 기능은 학생 성적 정보 테이블에서 학생 성적 정보를 쿼리하는 것입니다.
mysql> DELIMITER // mysql> CREATE PROCEDURE ShowStuScore() -> BEGIN -> SELECT * FROM tb_students_score; -> END // Query OK, 0 rows affected (0.09 sec)
결과는 ShowStuScore 저장 프로시저가 성공적으로 생성되었음을 보여줍니다.
더 많은 프로그래밍 관련 지식을 보려면 프로그래밍 소개를 방문하세요! !
위 내용은 SQL 저장 프로시저 작성 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!