천재 블로그
[PL/SQL] 스칼라형 데이터타입 본문
스칼라형 데이터타입
숫자 타입
데이터타입 |
대입 가능한 수치 |
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) |
'프로그래밍 > Oracle' 카테고리의 다른 글
[PL/SQL] COMPOSITE - RECORD 타입 (0) | 2019.06.19 |
---|---|
[PL/SQL] LOB 데이터 타입 (0) | 2019.06.19 |
[PL/SQL] 변수의 대입과 초기값의 정의 (0) | 2019.06.18 |
[PL/SQL] 프로그래밍 주의 사항 (0) | 2019.06.18 |
[에러노트] Oracle 12c 계정 생성 오류 ORA-65096: 공통 사용자 또는 롤 이름이 부적합니다. (0) | 2019.06.18 |