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

MySQL 저장 프로시저 작성 및 사용을 시작하기 위한 전제 조건은 무엇입니까?


MySQL 저장 프로시저 작성 및 사용을 시작하기 전에 다음 전제 조건이 있어야 합니다. −

MySQL 버전

MySQL 5에 저장 프로시저가 도입되었다는 것을 알고 있으므로 저장 프로시저를 작성하고 사용하기 전에 먼저 MySQL 버전을 확인해야 합니다. 다음 쿼리로 수행할 수 있습니다. -

mysql> Select VERSION();
+-----------+
| VERSION() |
+-----------+
| 5.7.20    |
+-----------+
1 row in set (0.10 sec)

현재 사용자의 권한

사실, CREATE PROCEDURE 및 CREATE FUNCTION은 CREATE ROUTINE 권한이 필요합니다. 기본적으로 MySQL은 루틴 작성자에게 ALTER ROUTINE 및 EXECUTE 권한을 자동으로 부여합니다. 이 동작은 automatic_sp_privileges 시스템 변수를 비활성화하여 변경할 수 있습니다. 현재 사용자의 권한은 다음 쿼리로 확인할 수 있습니다. -

mysql> SHOW PRIVILEGES

데이터베이스 선택

프로시저를 만들기 전에 사용 가능한 데이터베이스에서 데이터베이스를 선택해야 합니다. 다음 쿼리의 도움으로 수행할 수 있습니다. -

mysql> USE query;
Database changed

위 쿼리에서 'query'라는 데이터베이스를 사용하고 있음이 분명합니다.

구분자 선택

구분자는 SQL 문을 완성하는 데 사용되는 문자 또는 문자열입니다. 기본적으로 세미콜론(;)을 구분 기호로 사용합니다. 그러나 프로시저에 많은 문이 있을 수 있고 모든 사람이 세미콜론으로 끝나야 하기 때문에 저장 프로시저에서 문제가 발생합니다. 따라서 구분 기호로 문 또는 프로시저 내에서 거의 발생하지 않는 문자열을 선택하십시오. 이중 백슬래시 // 또는 이중 달러 기호 $$를 선택할 수 있습니다. 또는 우리가 선택한 다른 구분 기호 중 하나입니다. 다음 쿼리의 도움으로 수행할 수 있습니다. -

mysql> DELIMITER // ;

이제 기본 구분 기호가 // 기호로 변경되었으며 다음 쿼리에서 확인할 수 있습니다. -

mysql> Select * from student_info //
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 100  | Aarav   | Delhi      | Computers  |
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Jaipur     | Literature |
| 110  | Rahul   | Chandigarh | History    |
+------+---------+------------+------------+
4 rows in set (0.00 sec)