Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 구분 기호가 있는 저장 프로시저 만들기

<시간/>

create procedure 명령을 사용하여 저장 프로시저를 만들 수 있습니다. 구문은 다음과 같습니다 -

delimiter //CREATE PROCEDURE yourStoreProcedureName()BEGIN 여기에 변수 선언 쿼리문END //delimiter //

위의 구문을 적용하여 저장 프로시저를 만듭니다. 쿼리는 다음과 같습니다 -

<미리>mysql> 테스트 사용;데이터베이스 변경 mysql> 구분자 //mysql> 프로시저 생성 Sp_callTableStoredProcTable() -> 시작 -> select *from StoredProcTable; −> end //쿼리 OK, 영향을 받는 행 0개(0.54초)

이제 구분 기호를 변경해야 합니다. 저장 프로시저를 호출하려면 -

mysql> 구분 기호;

CALL 명령을 사용하여 저장 프로시저를 호출할 수 있습니다. 구문은 다음과 같습니다 -

당신의StoredProcedureName() 호출;

위의 저장 프로시저는 아래 쿼리와 같이 CALL 명령을 사용하여 호출할 수 있습니다. -

mysql> 호출 Sp_callTableStoredProcTable();

다음은 출력입니다 -

+-----------+------+| 이름 | 나이 |+-------------+------+| 존 | 23 || 밥 | 24 || 데이비드 | 20 |+--------+------+3행 세트(0.03초)쿼리 OK, 0행 영향(0.06초)

위에서 'StoredProcTable' 테이블을 사용했으며 이 테이블에는 3개의 레코드가 있습니다. 저장 프로시저를 사용하여 모든 레코드를 표시합니다.

저장 프로시저를 사용하여 테이블에 몇 개의 레코드가 있는지 확인할 수 있습니다 -

mysql> 구분 기호 //mysql> 프로시저 생성 CountingRecords() −> 시작 −> StoredProcTable에서 AllRecords로 count(*) 선택; −> end //쿼리 OK, 영향을 받는 행 0개(0.19초)mysql> delimiter;

CALL 명령을 사용하여 저장 프로시저를 호출합니다. 쿼리는 다음과 같습니다 -

mysql> CountingRecords() 호출;

다음 출력은 레코드 수를 표시합니다. -

+------------+| 모든 레코드 |+------------+| 3 |+------------+1 행 세트(0.31초) 쿼리 OK, 0행 영향(0.33초)