-
[삼쾌한 IT강의] MySQL 변수 종류 및 사용법데이터베이스/이론 2022. 7. 23. 16:45
안녕하세요! 삼쾌한 IT강의 백소라강사 입니다.
아래와 같이 MySQL 의 변수 종류와 사용법을 정리했습니다.
1. 사용자 정의 변수
1-1. 사용자 정의 변수 선언 및 초기화
SET @변수이름 = 대입값; 혹은 SET @변수이름 := 대입값;
SELECT @변수이름 := 대입값;SET 이외의 명령문에서는 = 가 비교연산자로 취급되기 때문에 SELECT 로 변수를 선언하고 값을 대입할 때는 := 를 사용한다.
1-2. 사용자 정의 변수 사용법
SET @start = 15, @finish = 20;
또는
SELECT @start := 15, @finish := 20;
SELECT * FROM employee WHERE id BETWEEN @start AND @finish;1-3. 참고사항
저장하는 값에 의해 자료형이 정해지며, Integer, Decimal, Float, Binary 그리고 문자열 타입만 취급할 수 있다. 또한 변수를 초기화 하지 않은 경우 값은 NULL, 자료형은 String 타입이다.
2. 지역변수
2-1 지역변수 선언 및 초기화
DELIMITER $$
CREATE PROCEDURE testPro(var1 INT)
BEGIN
DECLARE start INT DEFAULT 1;
DECLARE finish INT DEFAULT 10;
SELECT var1, start, finish;
SELECT * FROM employees WHERE id BETWEEN start AND fisnish;
END $$
DELIMITER ;
CALL testPro(1);DECLARE 로 먼저 선언 후에 사용하며, 지역변수로 사용하거나 스토어 프로시저(저장 프로시저)의 매개변수로 사용될 수 있다. 또한 변수의 범위는 변수가 선언되는 곳의 BEGIN ~ END 블록으로 제한된다.
2-2 참고사항
DEFAULT 기재를 하지않으면 초기값은 NULL 이다.
3. 시스템 변수
3-1. 시스템 변수 확인하기
SHOW GLOBAL VARIABLES; -- 모든 시스템 변수를 확인한다.
SHOW GLOBAL VARIABLES LIKE 'CHAR%'; -- 변수 이름이 CHAR로 시작되는 시스템 변수를 확인한다.첫번째 방식처럼 모든 시스템 변수를 확인하는 경우 시스템 변수의 개수가 무려 400개가 넘기 때문에 패턴(LIKE)을 이용하여 필요한 변수를 확인하는 것이 좋다.
3-2. 시스템 변수 수정하기
SET GLOBAL [시스템 변수 이름] = 적용할 값 ;
예를들어 character_set_server의 값을 utf8 로 바꾸고 싶다면, SET GLOBAL character_set_server = utf8;
참고 사이트:
https://stackoverflow.com/questions/11754781/how-to-declare-a-variable-in-mysql
'데이터베이스 > 이론' 카테고리의 다른 글
[삼쾌한 IT강의] PHP 주요 내장 함수 (0) 2022.07.23 [삼쾌한 IT강의] MySQL 조인 (0) 2022.07.23 [삼쾌한 IT강의] DB 테이블 구조 (0) 2022.07.23 [삼쾌한 IT강의] DBMS 란? DB 란? (0) 2022.07.23 [삼쾌한 IT강의] MySQL 조인 (0) 2022.07.23 댓글