Postgresql 9.3.25 문서화 | ||||
---|---|---|---|---|
사설 토토 : 문서 : 9.3 : 화폐 유형 | PostgreSQL : 문서 : 9.3 : 데이터 윈 토토 | 8 장. 데이터 유형 | PostgreSQL : 문서 : 9.3 : 토토 캔 데이터 유형 |
표 8-4. 배트맨 토토 유형
이름 | 설명 |
---|---|
캐릭터 변동 (n), varchar (n) | 한계가있는 가변 길이 |
배트맨 토토 (n), char (n) | 고정 길이, 블랭크 패딩 |
텍스트 | 가변 무제한 길이 |
테이블 8-4PostgreSQL.
SQL두 개의 기본을 정의합니다 배트맨 토토 유형 :캐릭터 변동 (n)and배트맨 토토 (11854_11857), 여기n긍정적 인 정수입니다. 둘 다 이러한 유형은 줄을 최대로 저장할 수 있습니다n캐릭터 (바이트가 아님) 길이. an 더 긴 배트맨 토토열을 이러한 유형의 열에 저장하려고 시도합니다. 초과 배트맨 토토가 모두 공간이 아닌 한 오류가 발생합니다. 이 경우 배트맨 토토열이 최대 길이로 잘립니다. (이 다소 기괴한 예외는에 필요합니다SQL표준.) 저장 될 배트맨 토토열이있는 경우 선언 된 길이보다 짧고 유형 값캐릭터공간에 둘러싸여 있습니다. 유형의 값12514_12533간단히 저장합니다 짧은 배트맨 토토열.
값을 명시 적으로 값에 캐스트하는 경우배트맨 토토 다양한 (n)또는배트맨 토토 (n)오버 길이의 값은n오류를 올리지 않고 배트맨 토토. (이것 에 의해서도 필요합니다.SQL표준.)
표기법varchar (n)andchar (n)캐릭터 변동 (n)and배트맨 토토 (n)각각.캐릭터길이가 없으면 지정자가 동일합니다배트맨 토토 (1). 만약에배트맨 토토 다양한길이 지정자없이 사용되면 유형이 허용됩니다 모든 크기의 배트맨 토토열. 후자는입니다.PostgreSQL확장.
또한PostgreSQL제공텍스트줄을 저장하는 유형 모든 길이의. 비록 유형텍스트그렇지 않습니다 에서SQL표준, 몇 가지 다른 SQL 데이터베이스 관리 시스템도 있습니다.
유형의 값캐릭터물리적입니다 지정된 너비에 공백으로 패딩n, 저장 및 그 방식으로 표시됩니다. 그러나 패딩 공간은 의미 적으로 처리됩니다 의미 없는. 두 가지를 비교할 때 후행 공간이 무시됩니다 유형의 값캐릭터변환 할 때 제거캐릭터값으로 다른 배트맨 토토열 유형 중 하나. 후행 공간are의미 적으로 유의미한캐릭터 다양한and텍스트값, 패턴 일치를 사용할 때, 예 :좋아요, 정규 표현.
짧은 문자열 (최대 126 바이트)의 스토리지 요구 사항은 다음과 같습니다. 1 바이트 + 실제 문자열, 여기에는 공간 패딩이 포함됩니다. 의 사례캐릭터. 더 긴 줄에는 4가 있습니다 1 대신 오버 헤드의 바이트. 긴 줄은 압축됩니다. 시스템이 자동으로 시스템이므로 디스크의 물리적 요구 사항은 더 적은. 매우 긴 값은 또한 배경 테이블에 저장되므로 더 짧은 열 값에 대한 빠른 액세스를 방해하지 않습니다. 어쨌든 가장 긴 캐릭터 문자열은 저장된 것은 약 1GB입니다. (허용 될 최대 값n데이터 유형 선언은입니다 그보다 적습니다. 이를 변경하는 것은 유용하지 않습니다 멀티 바이트 배트맨 토토 인코딩 배트맨 토토 및 바이트 수를 인코딩합니다 상당히 다를 수 있습니다. 긴 줄을 보관하고 싶다면 특정 상한, 사용텍스트또는캐릭터 다양한길이 지정자가없는 오히려 임의의 길이 제한을 구성하는 것보다.)
팁 :이 세 가지 사이에는 성능 차이가 없습니다 유형을 사용할 때 저장 공간이 증가하는 것 외에 블랭크 패딩 유형 및 길이를 확인하기 위해 몇 가지 추가 CPU 사이클 길이가 제한된 열에 저장할 때. 하는 동안캐릭터 (n)다른 데이터베이스 시스템의 성능 장점은 없습니다. 그러한 이점에서의PostgreSQL; ~에 사실배트맨 토토 (n)는 일반적으로 세 가지 중 가장 느린 것입니다 추가 저장 비용으로 인해. 대부분의 상황에서텍스트또는배트맨 토토 다양한대신 사용해야합니다.
참조섹션 4.1.2.1String Literals의 구문에 대한 정보 및 toPostgreSQL : 문서 : 9.3 : 토토 사이트 추천 및 연산자정보에 대한 정보 사용 가능한 연산자 및 기능. 데이터베이스 문자 세트 텍스트 값을 저장하는 데 사용되는 문자 세트를 결정합니다. 자세한 내용 문자 세트 지원에 대한 정보, 참조섹션 22.3.
예 8-1. 배트맨 토토 유형 사용
생성 테이블 테스트 1 (배트맨 토토 (4)); test1 값 ( 'Ok')에 삽입; test1에서 a, char_length (a)를 선택하고; -(1) a | char_length ------+---------- OK | 2생성 테이블 test2 (b varchar (5)); test2 값 ( 'Ok')에 삽입; test2 값 ( '좋은')에 삽입; test2 값에 삽입 ( '너무 길다');오류 : 유형 배트맨 토토에 비해 너무 길다 (5)test2 값에 삽입 ( '너무 길다':: varchar (5)); - 명시 적 잘림 test2에서 b, char_length (b)를 선택하십시오.b | char_length -------+---------- OK | 2 좋은 | 5 너무 l | 5
char_length
함수는입니다
논의PostgreSQL : 문서 : 9.3 : 토토 사이트 함수 및 연산자.두 개의 다른 고정 길이 배트맨 토토 유형이 있습니다PostgreSQL, 표시테이블 8-5. 그만큼이름유형 존재전용식별자 저장 내부 시스템 카탈로그에서 일반 사용자. 길이는 현재 64 바이트로 정의됩니다 (63 사용 가능한 문자 + 종료기) 그러나 사용을 참조해야합니다 상수지명 된 ATALENinC소스 코드. 길이는 컴파일 시간에 설정됩니다 (따라서 특수 용도로 조정 가능); 기본 최대 값 향후 릴리스에서 길이가 변할 수 있습니다. 유형"char"(인용문 참고)char (1)하나의 바이트 만 사용한다는 점에서. 그것은 시스템 카탈로그에서 내부적으로 단순한 열거로 사용 유형.
이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
통화 유형 | PostgreSQL : 문서 : 9.3 : 데이터 윈 토토 | 이진 데이터 유형 |