2017-04-26 1 views
0

저장 프로 시저를 배우고 있으며 잘 진행 중입니다. 저는 약간의 문제에 직면하고 있습니다. 제 'DELIMETER; 남았습니다. 저장 프로 시저를 추가 할 때마다 'END $$'및 DELIMETER로 끝납니다. 실행되지 않습니다.MySql 구분 기호 문제

mysql> DELIMITER $$ 
mysql> CREATE PROCEDURE `add_workout` (IN _duration TINYINT(255),IN _premium CHAR(255)) 
    -> BEGIN 
    -> INSERT INTO workouts(duration,premium) VALUES(_duration,_premium); 
    -> END $$ 
Query OK, 0 rows affected (0.00 sec) 

mysql> DELIMITER ; 

그것은 저장 프로 시저를 생성하지만 나는 관심이 왜 이런 말에 DELIMTER 잎 수행합니다

결과는 다음과 같다?

그냥이 부분 실행 :

DELIMITER $$ 
CREATE PROCEDURE `add_workout` (IN _duration TINYINT(255),IN _premium CHAR(255)) 
BEGIN 
INSERT INTO workouts(duration,premium) VALUES(_duration,_premium); 
END$$ 

그리고 내가 쇼 테이블을 호출 할 예를 들어 그 후, 그것을 실행할 수 있도록 $$를 추가해야합니다.

답변

1

구분 기호가 $$ (으)로 변경되었습니다. END 다음에는 새로운 구분 기호로 문장이 끝나고 명령문이 실행됩니다.

Enter 키를 눌러 마지막 명령문을 실행하고 다시 변경하십시오.

이 작동하지하기위한 특별한 이유가되지 않습니다 : 그것은 나에게 혼란 조금 https://dev.mysql.com/doc/refman/5.7/en/stored-programs-defining.html

+0

감사합니다 : D는하지만 지금은 괜찮습니다 –