일반 사용자 정의 식별자
-규칙
- 첫 글자는 알파벳이나 한글과 같은 지역언어의 문자로 시작하며, 최대 30바이트의 길이를 가진다
- 두 번짜 문자부터는 알파벳, 한글, 숫자, _, $, #과 같은 문자들이 올 수 있다.
- 예약어는 사용할 수 없다.
대부분의 키워드는 사용자 저의 식별자로 사용할 수 있다. 하지만 키워드를 사용자 정의 식별자로 사용하면 사용에 제약이 따를 수도 있고 해당 식별자가 사용자 정의 식별자로 사용된 것인지 키워드 본연의 목적으로 사용된 것인지 구별에 혼동이 생길 수 있으므로 바람직하지 않다.
-일반 사용자 정의 식별자 예시
DECLARE
c_pi CONSTANT NUMBER := 3.14; -- 알파벳 식별자
사번 VARCHAR2(30); -- 한글 식별자
v_2_by_2 NUMBER; -- 숫자 사용
v_ten$ NUMBER; -- $ 문자 사용
v_seq# NUMBER; -- # 문자 사용
BEGIN
NULL;
END;
큰따옴표를 사용한 사용자 정의 식별자
식별자는 큰따옴표로 감싼 형태로 사용할 수 있다.
기본적으로 식별자는 대소문자를 구별하지 않지만 큰따옴표로 감싸면 대소문자가 구별된다.
큰따옴표를 사용하면 일반 사용자 정의 식별자의 제한 사항 중 30자 길이 제한을 제외한 모든 제약 사항을 넘어설 수 있다. 심지어 공백 문자나 특수 문자를 포함한 사용자 정의 식별자를 사용할 수도 있다. 또한 예약어나 키워드까지도 모두 사용자 정의 식별자로 사용할 수 있다. 다시 말해 큰따옴표를 사용하면 어떠한 문자열이라도 사용자 정의 식별자로 사용할 수 있다.
DECLARE
v_num NUMBER; --일반 사용자 정의 식별자(대문자 V_NUM으로 식별됨)
"v_num" NUMBER; --소문자 사용자 정의 식별자
"공백 포함 변수명" NUMBER; -- 공백 문자를 포함한 사용자 정의 식별자
"v_~!@#$%^&*()+-=" NUMBER; -- 특수 문자를 포함한 사용자 정의 식별자
"BEGIN" NUMBER; -- 예약어를 사용한 사용자 정의 식별자
FUNCTION "square number"(a_num NUMBER) --함수형 식별자에 소문자와 공백문자 포함
RETURN NUMBER IS
BEGIN
RETURN a_num * a_num;
END;
BEGIN
"v_num" := 10;
v_num := 20;
"공백 포함 변수명" := 30;
"v_!@#$%^&*()+-=" := 40;
"BEGIN" := 50;
DBMS_OUTPUT.PUT_LINE("v_num"); -- 소문자 식별자 = 10
DBMS_OUTPUT.PUT_LINE(V_NUM); -- 대문자 식별자 = 20
DBMS_OUTPUT.PUT_LINE(v_num); -- 대문자 식별자(위와 동일) = 20
DBMS_OUTPUT.PUT_LINE("V_NUM"); -- 대문자 식별자(위와 동일) = 20
DBMS_OUTPUT.PUT_LINE("공백 포함 변수명"); -- =30
DBMS_OUTPUT.PUT_LINE("v_!@#$%^&*()+-="); -- = 40
DBMS_OUTPUT.PUT_LINE("BEGIN"); -- = 50
DBMS_OUTPUT.PUT_LINE("square number"(10)); -- = 100
'DATABASE > SQL, PL-SQL' 카테고리의 다른 글
데이터 타입 상세 소개 - 1 (0) | 2021.01.19 |
---|---|
데이터 타입 소개 (0) | 2021.01.19 |
PL/SQL 식별자 - 1 (0) | 2021.01.17 |
PL/SQL 구분자 (0) | 2021.01.17 |
PL/SQL 개념 (0) | 2021.01.16 |
댓글