이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 8 장 데이터 젠 토토버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

8 장. 데이터

PostgreSQL풍부한 세트가 있습니다PostgreSQL사용범퍼카 토토 만들기명령.

표 8-1모든 것을 보여줍니다"별명"PostgreSQL역사적 이유로. ~ 안에

표 8-1. 데이터 범퍼카 토토

이름 별칭 설명
bigint int8 서명 8 바이트 정수
bigserial Serial8 8 바이트 정수가 자동화
비트 고정 길이 비트 문자열
비트 값 (n) varbit (n) 가변 길이 비트 문자열
부울 bool Logical Boolean (true/false)
Box 비행기의 직사각형 상자
BYTEA 이진 데이터
캐릭터 변동 (n) varchar (n) 가변 길이 문자열
캐릭터 (n) char (n) 고정 길이 문자열
CIDR IPv4 또는 IPv6 네트워크 주소
Circle 비행기의 원
날짜 달력 날짜 (연도, 월, 일)
이중 정밀 float8 이중 정밀 부동 소수점 번호
inet IPv4 또는 IPv6 호스트 주소
Integer int, int4 서명 4 바이트 정수
interval (p) 시간 범위
line 비행기의 무한 선 (완전히 아닙니다
LSEG 평면의 선 세그먼트
MacAddr Mac 주소
Money 통화 금액
숫자 [(p, s)] 십진 [(p, s)] 선택 가능한 정밀도가있는 정확한 숫자
PATH 비행기에서 열고 닫힌 기하학적 경로
포인트 평면의 기하학적 지점
Polygon 비행기에서 닫힌 기하학적 경로
Real float4 단일 정밀 부동 소수점 번호
smallint int2 2 바이트 정수 서명
Serial Serial4 4 바이트 정수를 자동화하는
텍스트 가변 길이 문자열
시간 [(p)] [시간대가없는 시간의 시간
시간 [(p)] with Time Zone Timetz 시간대를 포함한 시간
타임 스탬프 [(p)] [시간대가없는 타임 스탬프 날짜와 시간
타임 스탬프 [(p)] with Time Zone Timestamptz 시간대를 포함한 날짜와 시간

호환성 :다음 범퍼카 토토 (또는 철자SQL: 비트, 비트 varying, 부울, char, 캐릭터 다양한, 캐릭터, Varchar, 날짜, 더블, Integer, 간격, 숫자, Decimal, Real, smallint, Time(시간대가 있거나없는),타임 스탬프(시간대가 있거나없는).

각 데이터 범퍼카 토토에는 외부 표현이 결정됩니다PostgreSQL:

일부 연산자 및 기능 (예 : 추가 및

8.1. 숫자 범퍼카 토토

숫자 범퍼카 토토은 2, 4 및 8 바이트로 구성됩니다표 8-2나열

표 8-2. 숫자 범퍼카 토토

이름 스토리지 크기 설명 범위
smallint 2 바이트 소규모 정수 -32768 ~ +32767
Integer 4 바이트 정수에 대한 일반적인 선택 -2147483648 ~ +2147483647
bigint 8 바이트 대형 정수 -9223372036854775808 ~ 922337203685475807
Decimal 변수 사용자 지정 정밀도, 정확한 제한 없음
숫자 변수 사용자 지정 정밀도, 정확한 제한 없음
Real 4 바이트 가변-프레시션, eencact 6 십진 자릿수 정밀
이중 정밀 8 바이트 가변-프레시션, eencact 15 소수 자릿수 정밀
Serial 4 바이트 AutoinCrementing Integer 1 ~ 2147483647
bigserial 8 바이트 대형 자동화 정수 1 ~ 9223372036854775807

숫자 범퍼카 토토에 대한 상수의 구문이 설명되어 있습니다.섹션. 숫자 범퍼카 토토에는 해당 전체 세트가 있습니다9 장자세한 내용은. 그만큼

8.1.1. 정수 범퍼카 토토

범퍼카 토토smallint, Integerbigint저장

범퍼카 토토Integer평소입니다smallint범퍼카 토토은 일반적으로 디스크 공간이 프리미엄 인 경우에만 사용됩니다.bigint범퍼카 토토은 다음과 같은 경우에만 사용해야합니다Integer범위는 충분하지 않습니다.

thebigint범퍼카 토토이 작동하지 않을 수 있습니다bigint동일하게Integer(그러나 여전히 8 바이트를 차지합니다

SQLInteger(또는int) 및smallint. 범퍼카 토토bigint및 범퍼카 토토 이름int2, int4int8와 공유되는 확장자입니다SQL데이터베이스

참고 :범퍼카 토토 열이있는 경우smallint또는bigint

... 여기서 smallint_column = 42

시스템이 범퍼카 토토을 할당하기 때문에 인덱스를 사용하지 않습니다Integer상수 42로,PostgreSQL현재

... 여기서 smallint_column = '42'

시스템이 범퍼카 토토 해상도를 지연시킵니다

8.1.2. 임의의 정밀도

범퍼카 토토숫자숫자를 저장할 수 있습니다숫자범퍼카 토토은 매우 느립니다

다음에서 우리는이 용어를 사용합니다.스케일of숫자IS정밀of숫자전체 숫자의 총 수치는 총 수입니다.

숫자 범퍼카 토토의 정밀도와 스케일은 모두숫자구문 사용

숫자 (정밀, 스케일)

정밀도는 양수 여야합니다. 스케일 0 또는

숫자 (정밀)

0의 스케일을 선택합니다. 지정

숫자

정밀도 또는 스케일없이 열이 생성됩니다.숫자선언 된 열SQL표준이 필요합니다

값의 정밀도 또는 스케일이

범퍼카 토토Decimaland숫자동등합니다. 두 범퍼카 토토 모두의 일부입니다SQL표준.

8.1.3. 부동 소수점 범퍼카 토토

데이터 범퍼카 토토Realand이중 정밀가변적이며 가변적입니다IEEE이진 플로팅 포인트 산술 용 표준 754 (단일 및

부당 함은 일부 값을 정확하게 변환 할 수 없음을 의미합니다

  • 정확한 저장 및 계산이 필요한 경우 (예 :숫자대신 입력.

  • 이들로 복잡한 계산을하고 싶다면

  • 평등에 대한 두 개의 부동 소수점 값 비교 5 월

대부분의 플랫폼에서Real범퍼카 토토이 있습니다더블범퍼카 토토은 일반적으로 약 1e-307까지 범위를 갖습니다

PostgreSQL도 지원합니다floatandfloat (p)부정확 한 숫자를 지정합니다pPostgreSQLfloat (1)tofloat (24)ASRealwhilefloat (25)tofloat (53)select더블. 의 값p허용 범위 외부에서 오류를 그립니다.float정밀도가 지정되지 않은 상태로 사용됩니다이중 정밀.

참고 :이전PostgreSQL7.4, 정밀도float (p)너무 많은 것을 의미했습니다Realand더블정확히 24 비트와 53 비트가 있습니다p모두에 사용됩니다

8.1.4. 일련 범퍼카 토토

데이터 범퍼카 토토Serialandbigserial진정한 범퍼카 토토이 아니라 단지 aauto_increment일부가 지원하는 속성

테이블 생성TableName (
    Colname시리얼

지정과 동일합니다.

시퀀스 만들기TableName_Colname_Seq;TableName (
    ColnameInteger Default NextVal ( 'TableName_Colname_seq ') null

따라서 우리는 정수 열을 만들어NOT NULL제약 조건이 적용됩니다고유 한또는기본 키복제를 방지하기위한 제약 조건

참고 :이전PostgreSQL 7.3, Serial암시고유 한. 이것은 더 이상 자동이 아닙니다.

시퀀스의 다음 값을 삽입하려면Serial열,를 지정하십시오Serial열에 할당해야합니다삽입성명서 또는 사용을 통한기본값키 단어.

범퍼카 토토 이름SerialandSerial4동등합니다 : 둘 다 CreateInteger열. 범퍼카 토토 이름bigserialandSerial8작업bigint열.bigserial31수명의 식별자

a를 위해 생성 된 시퀀스Serial소유 열이있을 때 열이 자동으로 삭제됩니다PostgreSQL릴리스Serial열 자체;NextVal함수), 시퀀스가 ​​제거되면 고장됩니다.Serial열의 시퀀스