(Oracle DB) - 3. Data Type : Character

kynoh·2023년 3월 2일
0

Oracle Database

목록 보기
4/30
/* Character Data Type */
	/*
	-	CHAR(BYTE or CHAR)
		*	Fixed-length string type
		*	Max 2,000 bytes
		*	Default size is 1 byte
	
	-	VARCHAR2(BYTE or CHAR)
		*	Variable-length string type
		*	Max 4,000 bytes	
		*	Default size is 1 byte
		
	-	NCHAR(BYTE)
		*	Fixed-length Unicode string type (Available multi-language)
		*	Max 2,000 bytes
		*	Default size is 1 byte
	
	-	NVARCHAR2(BYTE)
		*	Variable-length Unicode string type (Available multi-language)
		*	Max 4,000 bytes	
		*	Default size is 1 byte
	
	-	LONG
		*	Variable-length string type
		*	Max 2 GigaBytes
		*	Not common to use
		*	Alternative types : CLOB, BLOB
	*/

INSERT INTO ex2_1
	(column1, column2)
	VALUES
	('abc', 'abc')
;

SELECT
	column1,		-- CHAR
	LENGTH(column1)	-- 10 bytes	
		AS len1,
	column2,		-- VARCHAR2
	LENGTH(column2)	-- 3 bytes
		AS len2
	FROM
		ex2_1
;

CREATE TABLE ex2_2(
	column1 VARCHAR2(3),
	column2 VARCHAR2(3 BYTE),
	column3 VARCHAR2(6 CHAR)
);

INSERT INTO ex2_2
	VALUES
	('abc', 'abc', 'abc')
;

SELECT
	column1,
	LENGTH(column1)	-- 3 bytes
		AS len1,
	column2,
	LENGTH(column2)	-- 3 bytes
		AS len2,
	column3,
	LENGTH(column3)	-- 3 bytes
		AS len3
	FROM ex2_2;
	
INSERT INTO ex2_2
	VALUES
	('노경래', '개발자', '일중독')	-- '노경래' generates ERROR (actual : 6, maximum : 3)
;

INSERT INTO ex2_2
	(column3)
	VALUES
	('일중독')
;

SELECT
	column3,
	LENGTH(column3)		-- 3 bytes
		AS len3,
	LENGTHB(column3)	-- 6 bytes
		AS bytelen
	FROM ex2_2
;
profile
On-orbit

0개의 댓글

관련 채용 정보