이번에는 PostgreSQL의 문자열 타입을 알아보도록 하겠다.
우선 아래와같이 매우심플하다. 보통 nvarchar()를 지원하는데 Pg에는 지원하지 않는다.
* 참고
- varchar : 영어,숫자=1Byte, 한글,한자등=2Byte
- nvarchar : 모든문자열=2Byte
형식 | 크기 | 별칭 |
character varying(n) | 가변 길이 문자열 | varchar(n) |
character(n) | 고정 길이 문자열 | char(n) |
text | 제한없이 가변 길이 |
그렇다면 여기서 nvarchar가 존재 하지 않는다면, 문자열 길이 계산은 어떻게 될까를 알아보았다.
--char_length : 문자열의 문자 수
--bit_length : 문자열의 비트 수
--octet_length : 문자열의 바이트 수
SELECT m_char
, char_length(m_char)
, bit_length(m_char)
, octet_length(m_char)
FROM test3
Byte 기준으로 보았을때, Postgre SQL의 경우 한글의 경우 무려 3Byte를 차지하는걸 알수있었다.
함수를 이용한 비트,바이트수 계산은 3Byte 이지만!, 실제로 컬럼 타입설정시 DataType에서 설정한 길이수 기준은
실제 데이터 insert등의 경우 숫자,영문,한글 모두 한글자(1)로 처리되어 동일하게 사용가능하다.
이점에 유념해서 컬럼 DataType선언을 하기 바란다. ^^
'MS Azure Log > Azure PostgreSQL' 카테고리의 다른 글
2-4-2. Azure PostgreSQL Data Type - (날짜,시간) 함수-date_part() (0) | 2023.01.25 |
---|---|
2-4-1. Azure PostgreSQL Data Type - 날짜,시간 형식 (0) | 2023.01.19 |
4-1. Azure PostgreSQL Procedure(프로시저) 만들기 (0) | 2023.01.12 |
2-9. Azure PostgreSQL Data Type vs MS-SQL 비교 (0) | 2023.01.05 |
3-2-1. Azure PostgreSQL 사용자(User/Role) 만들기-(테이블 권한없음-해결) (0) | 2023.01.03 |