프로시저를 전혀 몰라서요..
Mysql 매뉴얼을 보고 있는데 이해가 잘 안가는 부분이 있어서 질문드립니다.
매뉴얼 내용은 아래와 같습니다.
------------------------------------------------------------------------------------------------------------------------
루틴이 호출되면, 하나의 임플리시트(implicit) USE db_name 이 실행된다(그리고 루틴이 종료되면 마침).
스토어드 루틴내의 USE 명령문은 허용되지 않음.
데이터 베이스 이름으로 루틴 이름을 검증할 수 있다. 이것은 현재의 데이터 베이스 내에는 없는 루틴을 언급하기 위해 사용될 수도 있다. 예를 들면, test 데이터 베이스와 관련된 스토어드 프로시저 p 또는 함수 f를 호출하기 위해서는, CALL test.p() or test.f() 를 입력하면 된다 .
------------------------------------------------------------------------------------------------------------------------
이 말이 혹시 제가 이해하는게 맞나 해서요..
일반 쿼리의 경우 use DATABASE; Select * from table;
또는 Select * from DATABASE.table;
이렇게 사용 가능하잖아요.
그런데 프로시저 p()를 사용 할 경우
use DATABASE; CALL p(); 이것을 사용 할 수 없고
CALL DATABASE.p() 이렇게 사용 가능하단 것인가요?
사소한것에부터 혼란이 시작되네요.ㅠㅠ
|