|Postgres.
Postgres풍부한 세트가 있습니다 사용자가 사용할 수있는 기본 데이터 범퍼카 토토. 사용자는 새로운 범퍼카 토토을 추가 할 수 있습니다Postgres사용범퍼카 토토 만들기명령.
데이터 범퍼카 토토의 맥락에서 다음 섹션은 논의하다SQL표준 준수, 포팅 문제 및 사용. 일부Postgres범퍼카 토토은 직접에 해당합니다.SQL92-호환 범퍼카 토토. 다른 사례, 정의 된 데이터 범퍼카 토토SQL92구문은 직접 기본으로 맵핑됩니다Postgres범퍼카 토토. 많은 내장 범퍼카 토토 명백한 외부 형식이 있습니다. 그러나 몇 가지 범퍼카 토토도 있습니다 독특한Postgres, 예 : 오픈 닫힌 경로, 또는 형식에 대한 몇 가지 가능성이 있습니다. 날짜와 시간 범퍼카 토토으로.
표 3-1.Postgres데이터 범퍼카 토토
Postgres타입 | SQL92또는SQL3type | 설명 |
---|---|---|
bool | 부울 | 논리 부울 (참/거짓) |
Box | 2d의 직사각형 상자 비행기 | |
char (n) | 캐릭터 (n) | 고정 길이 문자 끈 |
CIDR | IP 버전 4 네트워크 또는 호스트 주소 | |
Circle | 2D 평면의 원 | |
날짜 | 날짜 | 시간이없는 캘린더 날짜 낮 |
10 진수 | 소수점 (P, S) | p <= 9, s에 대한 정확한 숫자 = 0 |
float4 | float (P),P<7 | 부동 소수점 번호 정도P |
float8 | float (P), 7 <=P<16 | 부동 소수점 번호 정도P |
inet | IP 버전 4 네트워크 또는 호스트 주소 | |
int2 | smallint | 2 바이트 정수 서명 |
int4 | int, Integer | 서명 4 바이트 정수 |
int8 | 서명 8 바이트 정수 | |
간격 | 간격 | 일반 사용 시간 범위 |
line | 2D 평면의 무한 선 | |
lseg | 2D 평면의 라인 세그먼트 | |
Money | 소수점 (9,2) | US 스타일 통화 |
숫자 | 숫자 (P, S) | p == 9, s =에 대한 정확한 숫자 0 |
PATH | 열고 닫힌 기하학적 경로 2D 평면에서 | |
포인트 | 2d의 기하학적 지점 비행기 | |
Polygon | 2D에서 닫힌 기하학적 경로 비행기 | |
Serial | 인덱싱을위한 고유 ID 교차 참조 | |
Time | 시간 | 시간의 시간 |
Timetz | 시간대가있는 시간 | 시간을 포함한 시간 존 |
타임 스탬프 | 시간대가있는 타임 스탬프 | 날짜/시간 |
varchar (n) | 캐릭터 변동 (N) | 가변 길이 문자 끈 |
참고 :theCIDRandinet유형은 처리하도록 설계되었습니다 IP 유형이지만 IPv4 만 현재 구현에서 처리됩니다. IPv4에 대해 이야기하는 모든 것은 IPv6에 적용됩니다. 미래 릴리스.
표 3-2.Postgres함수 상수
Postgres기능 | SQL92Constant | 설명 |
---|---|---|
getpgusername () | current_user | 현재의 사용자 이름 세션 |
날짜 ( 'now') | current_date | 현재 날짜 거래 |
Time ( 'now') | current_time | 현재 시간 거래 |
타임 스탬프 ( 'now') | current_timestamp | 현재의 날짜 및 시간 거래 |
Postgres에 기능이 있습니다 의 최전선ordbms개발. ~ 안에 에 대한 추가SQL3적합성, 상당한 부분SQL92도 있습니다 지원. 우리는 노력하지만SQL92규정 준수, 몇 가지 측면이 있습니다 고려되지 않고 살아나서는 안되는 표준 후속 표준.Postgres이러한 기능을 준수하기 위해 큰 노력을 기울이지 않을 것입니다. 하지만, 이것들은 거의 사용하지 않거나 관찰 된 경우에 적용되는 경향이 있으며 전형적인 사용자가 그들에게 들어 가지 않을 가능성이 없습니다.
베이스에 해당하는 대부분의 입력 및 출력 기능 유형 (예 : 정수 및 부동 소수점 번호)은 일부를 수행합니다 오류 확인. 일부 연산자 및 기능 (예 : 추가 곱셈)에서 런타임 오류 확인을 수행하지 않습니다 실행 속도 향상의 관심사. 일부 시스템에서 예를 들어, 일부 데이터 범퍼카 토토의 숫자 연산자는 조용히 언더 플로 또는 오버플로.
일부 입력 및 출력 함수는 뒤집을 수 없습니다. 저것 출력 함수의 결과는 원래 입력에 비해.
참고 :플로팅 포인트 번호는 가장 많이 유지할 수 있습니다 유형의 고유 정밀도 (일반적으로 15 자리 4 바이트 플로트의 경우 더블, 6 자리). 기본이있는 다른 유형 플로팅 포인트 필드 (예 : 기하학적 범퍼카 토토)는 비슷합니다 정도.
숫자 범퍼카 토토은 2 바이트 및 4 바이트 정수, 4 및 8 바이트 부동 소수점 번호 및 고정-정밀 소수점.
표 3-3.Postgres숫자 범퍼카 토토
숫자 범퍼카 토토 | 스토리지 | 설명 | 범위 |
---|---|---|---|
소수점 | 변수 | 사용자 지정 정밀도 | ~ 8000 자리 |
float4 | 4 바이트 | 가변-프레시션 | 6 소수점 자리 |
float8 | 8 바이트 | 가변-------프리션 | 15 소수점 자리 |
int2 | 2 바이트 | 고정--------프리션 | -32768 ~ +32767 |
int4 | 4 바이트 | 일반적인 선택 고정----------------퍼지 | -2147483648 ~ +2147483647 |
int8 | 8 바이트 | 매우 넓은 범위 고정----------------퍼지 | +/- 18 자리 자리 |
숫자 | variable | 사용자 지정 정밀도 | 제한 없음 |
Serial | 4 바이트 | 식별자 또는 교차 참조 | 0 ~ +2147483647 |
숫자 범퍼카 토토은 해당 산술 세트가 있습니다. 연산자 및 기능. 참조수치 연산자and수학적 기능자세한 내용은
theint8유형을 사용할 수 없습니다 모든 플랫폼은 컴파일러 지원에 의존하기 때문에
theSerial타입은 특수 사례 유형입니다 에 의해 건설Postgres다른 사람 기존 구성 요소. 일반적으로 고유 한 것을 만드는 데 사용됩니다 테이블 항목에 대한 식별자. 현재 구현에서 지정
테이블 만들기TableName(ColnameSerial);지정과 동일합니다.
시퀀스 만들기TableName_Colname_Seq; 테이블 작성TableName(Colnameint4 default nextVal ( 'TableName_Colname_Seq '); 고유 한 색인 생성TableName_Colname_key onTableName(Colname);
주의 |
Serialtype willnotbe 테이블이 떨어질 때 자동으로 제거됩니다. |
테이블 생성TableName(ColnameSerial); 드롭 테이블tableName; 테이블 작성TableName(ColnameSerial);시퀀스는 명시 적으로 데이터베이스에 남아 있습니다 삭제 사용드롭 시퀀스.