천재 블로그

[PL/SQL] 스칼라형 데이터타입 본문

프로그래밍/Oracle

[PL/SQL] 스칼라형 데이터타입

Dondons 2019. 6. 19. 10:12



스칼라형 데이터타입






숫자 타입


데이터타입

대입 가능한 수치 

 BINARY_INTEGER 

부호포함 정수(-2147483648 ~ 2147483647)

 BINARY_FLOAT

 단정도 IEEE 754형식의 유동소수점수

 BINARY_DOUBLE

 배정도 IEEE 754형식의 유동소수점수

 NUMBER

 1E-130에서 1.0E+ 126(하지만 1.0E+ 126은 포함하지 않는다)까지의 절대값을 가진 

고정소수점수 또는 유동소수점수

 PLS_INTEGER

 부호포함 정수(-2147483648~2147483647)





문자열 타입


각국의 언어 캐릭터 데이터에서 사용되는 문자 코드는 AL16UTF16, UTF8의 유니코드입니다.

밑 문장은 선언부의 v_dname이라는 변수에 VARCHAR2로 선언한 것인데요, 가로안의 숫자는 바이트 수를 의미합니다.

v_dname VARCHAR2(10) := '초기값';

 데이터타입

대입 가능한 수치 

 CHAR

고정길이의 문자데이터 (최대 사이즈 : 32767byte) 

 LONG

가변길이의 문자열 (최대 사이즈 : 32760byte) 

 VARCHAR2 

가변길이의 문자데이터 (최대 사이즈 : 32767byte) 

 NCHAR 

고정길이의 각국의 언어 캐릭터데이터

(최대 사이즈 : AL16UTF16 : 32767/2, UTF8 : 32767/3) 

 NVARCHAR2

가변길이의 각국의 언어 캐릭터데이터

(최대 사이즈 : AL16UTF16 : 32767/2, UTF8 : 32767/3) 





Boolean 타입

논리값 TRUE, FALSE 또는 NULL(존재하지 않는 값, 미지의 값 또는 적용불가능한 값을 나타냄)


 데이터타입

대입 가능한 값

 BOOLEAN

논리값 TRUE, FALSE 또는 NULL


1
2
3
4
5
6
7
8
DECLARE
    v_boolean BOOLEAN := TRUE;
BEGIN
    IF v_boolean THEN
        INSERT INTO work VALUES(1'TRUE입니다.');
    END IF;
END;
/






날짜 시간 타입


데이터타입

대입 가능한 값 

 DATA

 고정길이의 날짜 (기원전 4712년 1월 1일부터 서기 9999년 12월 31일)

 TIMESTAMP

 DATA형의 확장(소수점 초를 포함한 날짜)

 TIMESTAMP WITH TIME ZONE

 TIMESTAMP 타입의 확장 (타임존에 따른 시차를 포함한다)

 국제표준시간과의 차이를 표시

 TIMESTAMP WITH LOCAL TIME ZONE

 TIMESTAMP 타입의 확장 (타임존에 따른 시간의 차이를 포함한다)

 유저의 타임존의 데이터로 변환되서 표시

 INTERVAL YEAR TO MONTH

 년 및 월의 시간간격

 INTERVAL DAY TO SECOND

 일, 시간, 분 및 초의 시간각격 





ROWID UROWID 타입


오라클 데이터베이스 테이블에는 ROWID라고 하는 바이너리값(이진수)을 넣는 내부적 유사열이 있습니다.

각 ROWID는 행의 기억장치주소를 나타냅니다.

ROWID에는 물리적인 것, 논리적인 것이 있는데, 물리 ROWID는 보통 테이블의 행을 식별합니다.

논리 ROWID는 색인구성테이블의 행을 식별합니다.


 데이터타입

대입 가능한 값

 ROWID

 물리 ROWID (행의 기억장치주소)

 UROWID

 유니버셜 ROWID (물리 ROWID, 논리 ROWID, 외부 ROWID) 




Comments