새소식

Database/MySQL

[MySQL] 변수 저장 (@, DECLARE)

  • -

@변수

  • 전역 변수
  • DB 접속 종료시 변수가 제거
  • stored procedure는 sql문을 저장하여 사용하듯이, @는 길거나 복잡한 값을 변수로 저장할 수 있다.

 

SET @작명 = 값;

값 위치에는 하나의 값만 들어가면 되므로 하나의 값을 뱉는 서브쿼리를 사용해도 괜찮다.

 

 

example)

SET @name = "허버트 블레인 볼페슐레겔슈타인하우젠베르거도르프 시니어";

SELECT @name;

 

 

 

 

DECLARE

  • 지역 변수
  • procedure 안에서 DECLARE 키워드로 변수를 생성할 수 있음
  • procedure 실행 종료 시 변수가 제거

 

DELIMITER $$
$$
CREATE PROCEDURE mart.var_study()
BEGIN
	DECLARE age int DEFAULT 10;
	SELECT age;
END
$$ 
DELIMITER ;

CALL mart.var_study();

 

 

 

728x90
Contents