> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 사용자 정의, 로컬 및 서버 시스템 변수를 선언하고 사용하는 방법은 무엇입니까?

MySQL에서 사용자 정의, 로컬 및 서버 시스템 변수를 선언하고 사용하는 방법은 무엇입니까?

DDD
풀어 주다: 2025-01-22 03:26:15
원래의
826명이 탐색했습니다.

How to Declare and Use User-Defined, Local, and Server System Variables in MySQL?

MySQL 변수에 대한 자세한 설명과 활용

MySQL의 변수는 쿼리가 실행되는 동안 값을 임시로 저장하는 컨테이너입니다. 사용자 정의 변수, 로컬 변수 및 서버 시스템 변수의 세 가지 주요 유형이 있습니다.

사용자 정의 변수(@ 접두사)

  • 선언: 명시적인 선언이 필요하지 않습니다
  • 초기값: NULL
  • 데이터 유형: 정수, 소수, 부동 소수점, 문자열 또는 NULL
  • 범위: 세션 수준

사용자 정의 변수 초기화:

<code class="language-sql">SET @start = 1, @finish = 10;</code>
로그인 후 복사

예: SELECT 쿼리에서 사용자 정의 변수 사용

<code class="language-sql">SELECT * FROM places WHERE place BETWEEN @start AND @finish;</code>
로그인 후 복사

지역 변수(접두사 없음)

  • 문: DECLARE 문을 사용해야 합니다
  • 초기값 : DEFAULT절 생략시 NULL
  • 데이터 유형: 정수, 십진수, 문자열 또는 NULL
  • 범위: 선언된 BEGIN...END 블록으로 제한됩니다

저장 프로시저에서 지역 변수 선언 및 초기화:

<code class="language-sql">DECLARE start INT unsigned DEFAULT 1;  
DECLARE finish INT unsigned DEFAULT 10;</code>
로그인 후 복사

예: 저장 프로시저에서 지역 변수 사용

<code class="language-sql">CREATE PROCEDURE sp_test(var1 INT) 
BEGIN   
    DECLARE start  INT unsigned DEFAULT 1;  
    DECLARE finish INT unsigned DEFAULT 10;

    SELECT  var1, start, finish;

    SELECT * FROM places WHERE place BETWEEN start AND finish; 
END; </code>
로그인 후 복사

서버 시스템 변수(@@ 접두사)

  • 선언: 명시적인 선언이 필요하지 않습니다
  • 초기값 : MySQL 서버에서 설정한 기본값
  • 데이터 유형: 변수에 따라 다름
  • 범위: 전역(서버 전체) 또는 세션 수준

서버 시스템 변수의 현재 값 보기:

<code class="language-sql">SELECT @@sort_buffer_size;</code>
로그인 후 복사

서버 시스템 변수 값 수정:

<code class="language-sql">SET GLOBAL sort_buffer_size=1000000;</code>
로그인 후 복사

위 내용은 MySQL에서 사용자 정의, 로컬 및 서버 시스템 변수를 선언하고 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿