젠 토토 : 문서 : 9.6 : 젠 토토 | |||
---|---|---|---|
4300토토 사이트 추천100-100300 | PostgreSQL : 문서 : 9.6 : 토토 결과 및 연산자 | 제 9 장 기능 및 연산자 | PostgreSQL : 문서 : 9.6 : 시스템 관리 스포츠 토토 |
표 9-59세션 및 시스템 정보를 추출하는 몇 가지 기능을 보여줍니다.
이 섹션에 나열된 기능 외에도 시스템 정보를 제공하는 통계 시스템과 관련된 여러 기능이 있습니다. 보다섹션 28.2.2자세한 내용은
표 9-59. 세션 정보 기능
이름 | 반환 유형 | 설명 |
---|---|---|
current_catalog |
이름 | 현재 데이터베이스 이름 (호출"카탈로그"SQL 표준에서) |
current_database () |
이름 | 현재 데이터베이스 이름 |
current_query () |
텍스트 | 클라이언트가 제출 한대로 현재 실행중인 쿼리의 텍스트 (하나 이상의 문을 포함 할 수 있음) |
current_role |
이름 | 동등한current_user |
current_schema [()] |
이름 | 현재 스키마의 이름 |
current_schemas (부울) |
이름 [] | 검색 경로에서 스키마 이름, 선택적으로 암시 적 스키마를 포함하여 |
current_user |
이름 | 현재 실행 컨텍스트의 스포츠 토토 베트맨 이름 |
inet_client_addr () |
inet | 원격 연결 주소 |
inet_client_port () |
int | 원격 연결 포트 |
inet_server_addr () |
inet | 로컬 연결 주소 |
inet_server_port () |
int | 로컬 연결 포트 |
pg_backend_pid () |
int | 현재 세션에 첨부 된 서버 프로세스의 프로세스 ID |
pg_blocking_pids (int) |
int [] | 지정된 서버 프로세스 ID를 차단하는 프로세스 ID (S) |
pg_conf_load_time () |
시간대가있는 타임 스탬프 | 구성로드 시간 |
pg_my_temp_schema () |
OID | 세션의 임시 스키마의 OID 또는 0이면 0 |
pg_is_other_temp_schema (OID) |
부울 | Schema는 다른 세션의 임시 스키마입니까? |
pg_listening_channels () |
텍스트 설정 | 세션이 현재 듣고있는 채널 이름 |
pg_notification_queue_usage () |
더블 | 현재 점유 된 비동기 알림 대기열의 분획 (0-1) |
PG_POSTMASTER_START_TIME () |
시간대가있는 타임 스탬프 | 서버 시작 시간 |
pg_trigger_depth () |
int | 현재 중첩 수준PostgreSQL트리거 (0 트리거 내부에서 직접 또는 간접적으로 호출되지 않은 경우) |
session_user |
이름 | 세션 스포츠 토토 베트맨 이름 |
스포츠 토토 베트맨 |
이름 | 동등한current_user |
version () |
텍스트 | PostgreSQL버전 정보. 참조 참조server_version_num기계 읽을 수있는 버전의 경우. |
참고 :
current_catalog
,current_role
,current_schema
,current_user
,session_user
및스포츠 토토 베트맨
특별한 구문 상태가있어SQL: 괄호를 추적하지 않고 호출해야합니다. (PostgreSQL에서 괄호는 선택적으로를 사용할 수 있습니다current_schema
그러나 다른 사람들과는 그렇지 않습니다.)
thesession_user
일반적으로 현재 데이터베이스 연결을 시작한 스포츠 토토 베트맨입니다. 그러나 슈퍼업자는이 설정을 변경할 수 있습니다.세션 승인 설정. 그만큼current_user
허가 확인에 적용되는 스포츠 토토 베트맨 식별자입니다. 일반적으로 세션 스포츠 토토 베트맨와 동일하지만로 변경할 수 있습니다.PostgreSQL : 문서 : 9.6 : 스포츠 토토 설정. 또한 속성으로 함수 실행 중에 변경보안 정의기. Unix Parlance에서 세션 스포츠 토토 베트맨는입니다."실제 스포츠 토토 베트맨"그리고 현재 스포츠 토토 베트맨는입니다."효과적인 스포츠 토토 베트맨". current_role
and스포츠 토토 베트맨
동의어입니다current_user
. (SQL 표준은을 구별합니다.current_role
andcurrent_user
그러나PostgreSQL스포츠 토토 베트맨와 역할을 단일 종류의 엔티티로 통합하기 때문에 그렇지 않습니다.)
current_schema
검색 경로에서 첫 번째 스키마 이름을 반환합니다 (또는 검색 경로가 비어있는 경우 널 값). 이것은 대상 스키마를 지정하지 않고 생성 된 모든 테이블 또는 기타 지정된 개체에 사용될 스키마입니다.current_schemas (부울)
현재 검색 경로에있는 모든 스키마의 이름 배열을 반환합니다. 부울 옵션은 암시 적으로 포함 된 시스템 스키마를 포함하는지 여부를 결정합니다.PG_CATALOG반환 된 검색 경로에 포함되어 있습니다.
참고 :검색 경로는 실행 시간에 변경 될 수 있습니다. 명령은 다음과 같습니다.
search_path를 설정스키마 [, 스키마, ...]
inet_client_addr
현재 클라이언트의 IP 주소를 반환하고inet_client_port
포트 번호를 반환합니다.inet_server_addr
서버가 현재 연결을 수락 한 IP 주소를 반환하고inet_server_port
포트 번호를 반환합니다. 현재 연결이 Unix-Domain 소켓을 통해 인 경우 이러한 모든 기능이 NULL을 반환합니다.
PG_BLOCKING_PIDS
지정된 프로세스 ID로 서버 프로세스를 차단하는 세션의 프로세스 ID 배열 또는 서버 프로세스가 없거나 차단되지 않은 경우 빈 배열을 반환합니다. 하나의 서버 프로세스는 차단 된 프로세스의 잠금 요청 (하드 블록)과 충돌하는 잠금 장치를 보유하거나 차단 된 프로세스의 잠금 요청과 충돌하고 대기 대기열 (소프트 블록)에서 앞서있는 잠금을 기다리고있는 경우 다른 서버가 차단됩니다.pg_backend_pid
결과) 실제 잠금 장치가 아동 근로자 절차에 의해 보류되거나 기다리고있는 경우에도. 그 결과 결과에 복제 된 PID가있을 수 있습니다.
pg_conf_load_time
반환시간대가있는 타임 스탬프서버 구성 파일이 마지막으로로드 된 시점. (현재 세션이 당시에 살아남은 경우, 이것은 세션 자체가 구성 파일을 다시 읽을 때가되므로 읽기는 다른 세션마다 약간 다를 것입니다. 그렇지 않으면 Postmaster 프로세스가 구성 파일을 다시 읽을 때입니다.).
pg_my_temp_schema
현재 세션의 임시 스키마의 OID를 반환합니다.pg_is_other_temp_schema
주어진 OID가 다른 세션의 임시 스키마의 OID 인 경우 true를 반환합니다. (예를 들어, 카탈로그 디스플레이에서 다른 세션의 임시 테이블을 제외하는 데 유용 할 수 있습니다.)
pg_listening_channels
현재 세션에서 듣고있는 비동기식 알림 채널의 이름 세트를 반환합니다.pg_notification_queue_usage
현재 사용 가능한 총 공간의 일부를 반환합니다.더블범위 0-1. 보다듣기andNotify자세한 내용은
PG_POSTMASTER_START_TIME
반환시간대가있는 타임 스탬프서버가 시작된 시점.
버전
를 설명하는 문자열을 반환합니다PostgreSQL서버 버전. 이 정보를 얻을 수도 있습니다.Server_version또는 기계 읽을 수있는 버전의 경우server_version_num. 소프트웨어 개발자는 사용해야합니다server_version_num(8.2 이후 사용 가능) 또는pqserverversion
텍스트 버전을 구문 분석하는 대신
표 9-60스포츠 토토 베트맨가 프로그래밍 방식으로 객체 액세스 권한을 쿼리 할 수있는 함수를 나열합니다. 보다토토 사이트 순위 PostgreSQL : 문서 : 9.6 : 권한특권에 대한 자세한 내용은
표 9-60. 액세스 권한 문의 기능
이름 | 반환 유형 | 설명 |
---|---|---|
has_any_column_privilege (스포츠 토토 베트맨, 테이블, 특권) |
부울 | 스포츠 토토 베트맨는 테이블의 모든 열에 대한 특권이 있습니까 |
has_any_column_privilege (테이블, 특권) |
부울 | 현재 스포츠 토토 베트맨는 테이블 열의 모든 열에 대한 특권이 있습니까 |
has_column_privilege (스포츠 토토 베트맨, 테이블, 열, 특권) |
부울 | 스포츠 토토 베트맨는 열에 대한 특권이 있습니까 |
has_column_privilege (테이블, 열, 특권) |
부울 | 현재 스포츠 토토 베트맨는 열에 대한 특권이 있습니까 |
has_database_privilege (스포츠 토토 베트맨, 데이터베이스, 특권) |
부울 | 스포츠 토토 베트맨는 데이터베이스에 대한 권한이 있습니까 |
has_database_privilege (데이터베이스, 특권) |
부울 | 현재 스포츠 토토 베트맨는 데이터베이스에 대한 권한이 있습니까 |
has_foreign_data_wrapper_privilege (스포츠 토토 베트맨, FDW, 특권) |
부울 | 스포츠 토토 베트맨는 외국 데이터 래퍼에 대한 특권이 있습니까 |
has_foreign_data_wrapper_privilege (FDW, 특권) |
부울 | 현재 스포츠 토토 베트맨는 외국 데이터 래퍼에 대한 특권이 있습니까 |
has_function_privilege (스포츠 토토 베트맨, 기능, 특권) |
부울 | 스포츠 토토 베트맨는 기능에 대한 특권이 있습니까 |
has_function_privilege (기능, 특권) |
부울 | 현재 스포츠 토토 베트맨는 기능에 대한 특권이 있습니까 |
has_language_privilege (스포츠 토토 베트맨, 언어, 특권) |
부울 | 스포츠 토토 베트맨는 언어에 대한 특권이 있습니까 |
has_language_privilege (언어, 특권) |
부울 | 현재 스포츠 토토 베트맨는 언어에 대한 특권이 있습니까 |
has_schema_privilege (스포츠 토토 베트맨, 스키마, 특권) |
부울 | 스포츠 토토 베트맨는 스키마에 대한 권한이 있습니까 |
has_schema_privilege (스키마, 특권) |
부울 | 현재 스포츠 토토 베트맨는 스키마에 대한 권한이 있습니까 |
has_sequence_privilege (스포츠 토토 베트맨, 시퀀스, 특권) |
부울 | 스포츠 토토 베트맨는 시퀀스에 대한 특권이 있습니까 |
has_sequence_privilege (시퀀스, 특권) |
부울 | 현재 스포츠 토토 베트맨가 시퀀스에 대한 특권을 가지고 있습니까 |
has_server_privilege (스포츠 토토 베트맨, Server, 특권) |
부울 | 스포츠 토토 베트맨는 외국 서버에 대한 특권이 있습니까 |
has_server_privilege (Server, 특권) |
부울 | 현재 스포츠 토토 베트맨는 외국 서버에 대한 특권이 있습니까 |
has_table_privilege (스포츠 토토 베트맨, 테이블, 특권) |
부울 | 스포츠 토토 베트맨는 표에 대한 특권이 있습니까 |
has_table_privilege (테이블, 특권) |
부울 | 현재 스포츠 토토 베트맨가 표에 대한 특권이 있습니까 |
has_tablespace_privilege (스포츠 토토 베트맨, 테이블 스페이스, 특권) |
부울 | 스포츠 토토 베트맨는 테이블 스페이스에 대한 특권이 있습니까 |
has_tablespace_privilege (테이블 스페이스, 특권) |
부울 | 현재 스포츠 토토 베트맨는 테이블 스페이스에 대한 특권이 있습니까 |
has_type_privilege (스포츠 토토 베트맨, 타입, 특권) |
부울 | 스포츠 토토 베트맨는 유형에 대한 특권이 있습니까 |
has_type_privilege (타입, 특권) |
부울 | 현재 스포츠 토토 베트맨는 유형에 대한 특권이 있습니까 |
PG_HAS_ROLE (스포츠 토토 베트맨, 역할, 특권) |
부울 | 스포츠 토토 베트맨는 역할에 대한 특권이 있습니까 |
PG_HAS_ROLE (역할, 특권) |
부울 | 현재 스포츠 토토 베트맨는 역할에 대한 특권이 있습니까 |
row_security_active (테이블) |
부울 | 현재 스포츠 토토 베트맨는 표에 대한 행 수준 보안 활성을 가지고 있습니까 |
has_table_privilege
스포츠 토토 베트맨가 특정 방식으로 테이블에 액세스 할 수 있는지 확인합니다. 스포츠 토토 베트맨는 OID (별로 이름별로 지정할 수 있습니다.OID), public대중의 의사 론을 나타내거나 논쟁이 생략 된 경우current_user
가 가정됩니다. 표는 이름 또는 OID로 지정할 수 있습니다.has_table_privilege
, 인수의 수와 유형으로 구별 할 수 있습니다.) 이름으로 지정할 때, 이름은 필요한 경우 스키마 자격을 사용할 수 있습니다. 원하는 액세스 권한 유형은 텍스트 문자열로 지정되며 값 중 하나로 평가해야합니다.select, 삽입, 업데이트, 삭제, Truncate, 참조또는트리거. 선택적으로,보조금 옵션권한이 보조금 옵션으로 개최되는지 여부를 테스트하기 위해 권한 유형에 추가 할 수 있습니다. 또한 여러 권한 유형을 쉼표로 분리 할 수 있으며,이 경우 결과는입니다.true나열된 권한이 보유 된 경우. (권한 문자열의 경우는 중요하지 않으며, 특권 이름 내에서는 여분의 공백이 허용되지 않습니다.) 일부 예 :
select has_table_privilege ( 'myschema.mytable', 'select');
has_sequence_privilege
스포츠 토토 베트맨가 특정 방식으로 시퀀스에 액세스 할 수 있는지 확인합니다. 논쟁의 가능성은와 유사합니다.has_table_privilege
. 원하는 액세스 권한 유형은 중 하나로 평가해야합니다.usage, select또는업데이트.
has_any_column_privilege
스포츠 토토 베트맨가 특정 방식으로 테이블의 열에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
, 원하는 액세스 권한 유형이 일부 조합으로 평가해야한다는 점을 제외하고select, 삽입, 업데이트또는참조. 테이블 레벨에 이러한 권한을 두는 것은 테이블의 각 열에 대해 암시 적으로이를 부여하므로has_any_column_privilege
항상 돌아올 것입니다trueifhas_table_privilege
같은 주장을합니다. 하지만has_any_column_privilege
또한 하나 이상의 열에 대한 특권의 열 수준 보조금이 있으면 성공합니다.
has_column_privilege
스포츠 토토 베트맨가 특정 방식으로 열에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
, 이름 또는 속성 번호로 열을 지정할 수 있도록 추가 할 수 있습니다. 원하는 액세스 권한 유형은 일부 조합으로 평가해야합니다.select, 삽입, 업데이트또는참조. 테이블 수준에 이러한 권한을 두는 것은 테이블의 각 열에 대해 암시 적으로이를 부여합니다.
has_database_privilege
스포츠 토토 베트맨가 특정 방식으로 데이터베이스에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. 원하는 액세스 권한 유형은 일부 조합으로 평가해야합니다.Create, Connect, 임시또는temp(임시).
has_function_privilege
스포츠 토토 베트맨가 특정 방식으로 함수에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. OID가 아닌 텍스트 문자열로 함수를 지정할 때 허용 입력은와 동일합니다.레지비어데이터 유형 (참조PostgreSQL : 문서 : 9.6 : 객체 식별자 토토 결과). 원하는 액세스 권한 유형은 평가해야합니다.execute. 예는 다음과 같습니다.
select has_function_privilege ( 'joeuser', 'myfunc (int, text)', 'execute');
has_foreign_data_wrapper_privilege
스포츠 토토 베트맨가 특정 방식으로 외국 데이터 래퍼에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. 원하는 액세스 권한 유형은 평가해야합니다.usage.
has_language_privilege
스포츠 토토 베트맨가 특정 방식으로 절차 언어에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. 원하는 액세스 권한 유형은 평가해야합니다.usage.
has_schema_privilege
스포츠 토토 베트맨가 특정 방식으로 스키마에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. 원하는 액세스 권한 유형은 일부 조합으로 평가해야합니다.Create또는usage.
has_server_privilege
스포츠 토토 베트맨가 특정 방식으로 외국 서버에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. 원하는 액세스 권한 유형은 평가해야합니다.usage.
has_tablespace_privilege
스포츠 토토 베트맨가 특정 방식으로 테이블 스페이스에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. 원하는 액세스 권한 유형은 평가해야합니다.Create.
has_type_privilege
스포츠 토토 베트맨가 특정 방식으로 유형에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
. OID가 아닌 텍스트로 유형을 지정할 때 허용 입력은와 동일합니다.Regtype데이터 유형 (참조PostgreSQL : 문서 : 9.6 : 객체 식별자 토토 결과). 원하는 액세스 권한 유형은 평가해야합니다.usage.
PG_HAS_ROLE
스포츠 토토 베트맨가 특정 방식으로 역할에 액세스 할 수 있는지 확인합니다. 그것의 주장 가능성은와 유사하다.has_table_privilege
public스포츠 토토 베트맨 이름으로 허용되지 않습니다. 원하는 액세스 권한 유형은 일부 조합으로 평가해야합니다.회원또는usage. 회원역할의 직간접 또는 간접적 인 멤버십을 나타냅니다 (즉, 할 권리역할 설정), whileusage역할의 특권을 즉시 수행하지 않고 사용할 수 있는지를 나타냅니다역할 설정.
row_security_active
|current_user
및 환경. 테이블은 이름 또는 oid로 지정할 수 있습니다.
표 9-61특정 객체가 있는지 여부를 결정하는 함수를 보여줍니다가시적현재 스키마 검색 경로에서. 예를 들어, 포함 된 스키마가 검색 경로에 있고 검색 경로의 앞부분에서 동일한 이름의 테이블이 나타나지 않으면 테이블이 표시되는 것으로 알려져 있습니다.
pg_class에서 pg_table_is_visible (oid);에서 relname을 선택하십시오.
표 9-61. 스키마 가시성 문의 기능
이름 | 반환 유형 | 설명 |
---|---|---|
pg_collation_is_visible (Collation_oid) |
부울 | 29298_29333 |
pg_conversion_is_visible (converion_oid) |
부울 | 검색 경로에서 전환이 표시됩니다 |
pg_function_is_visible (function_oid) |
부울 | 검색 경로에서 기능이 표시됩니다 |
pg_opclass_is_visible (opclass_oid) |
부울 | 검색 경로에서 운영자 클래스가 표시됩니다 |
pg_operator_is_visible (Operator_oid) |
부울 | 검색 경로에서 작업자가 표시됩니다 |
pg_opfamily_is_visible (opclass_oid) |
부울 | 검색 경로에서 운영자 패밀리가 보이는가 |
pg_table_is_visible (table_oid) |
부울 | 검색 경로에서 테이블이 표시됩니다 |
pg_ts_config_is_visible (config_oid) |
부울 | 텍스트 검색 구성이 검색 경로에 표시됩니다 |
pg_ts_dict_is_visible (dict_oid) |
부울 | 검색 경로에서 텍스트 검색 사전이 표시됩니다 |
pg_ts_parser_is_visible (parser_oid) |
부울 | 텍스트 검색 파서가 검색 경로에 표시됩니다 |
pg_ts_template_is_visible (template_oid) |
부울 | 텍스트 검색 템플릿이 검색 경로에 표시됩니다 |
pg_type_is_visible (type_oid) |
부울 | 검색 경로에서 표시되는 유형 (또는 도메인)입니다 |
각 함수는 한 유형의 데이터베이스 개체에 대한 가시성 검사를 수행합니다. 참고pg_table_is_visible
보기, 구체화 된보기, 인덱스, 시퀀스 및 외국 테이블과 함께 사용할 수 있습니다.pg_type_is_visible
도메인과 함께 사용할 수도 있습니다. 함수 및 연산자의 경우 동일한 이름의 개체가없는 경우 검색 경로의 객체가 표시됩니다.및 인수 데이터 유형 (들)경로 초기. 운영자 클래스의 경우 이름과 관련 인덱스 액세스 방법이 모두 고려됩니다.
이 모든 함수는 객체 OID가 확인할 객체를 확인해야합니다. 이름으로 객체를 테스트하려면 OID 별명 유형을 사용하는 것이 편리합니다 (Regclass, Regtype, 레지비어, Regoperator, RegConfig또는RegDictionary), 예 :
PG_TYPE_IS_VISIBE ( 'MySCHEMA.WIDGET':: regtype); 선택
이런 방식으로 비 스키마 자격이없는 유형 이름을 테스트하는 것은 의미가 없습니다. 이름을 전혀 인식 할 수 있다면 표시해야합니다..
표 9-62시스템 카탈로그에서 정보를 추출하는 기능을 나열합니다.
표 9-62. 시스템 카탈로그 정보 기능
이름 | 반환 유형 | 설명 |
---|---|---|
format_type (type_oid, typemod) |
텍스트 | 데이터 유형의 SQL 이름 가져 오기 |
pg_get_constraintdef (제약 _OOD) |
텍스트 | 제약 조건의 정의 받기 |
pg_get_constraintdef (제약 _OOD, pretty_bool) |
텍스트 | 제약 조건의 정의 받기 |
pg_get_expr (pg_node_tree, relation_oid) |
텍스트 | 표현식의 내부 형태를 디 컴파일하는데, 이의 Vars는 두 번째 매개 변수로 표시된 관계를 나타냅니다 |
pg_get_expr (pg_node_tree, relation_oid, pretty_bool) |
텍스트 | 표현식의 내부 형태를 디 컴파일하는데, 이의 Vars는 두 번째 매개 변수로 표시된 관계를 나타냅니다 |
pg_get_functionDef (func_oid) |
텍스트 | 함수 정의 받기 |
pg_get_function_arguments (func_oid) |
텍스트 | 기능 정의의 인수 목록 가져 오기 (기본값 포함) |
pg_get_function_identity_arguments (func_oid) |
텍스트 | 함수를 식별하려면 인수 목록 가져 오기 (기본값없이) |
pg_get_function_result (func_oid) |
텍스트 | get반환함수 조항 |
pg_get_indexdef (index_oid) |
텍스트 | get색인 생성인덱스 명령 |
pg_get_indexdef (index_oid, column_no, pretty_bool) |
텍스트 | get색인 생성인덱스 명령 또는 하나의 인덱스 열의 정의column_no| |
pg_get_keywords () |
Setof Record | SQL 키워드 및 해당 범주 목록 가져 오기 |
PG_GET_RULEDEF (rule_oid) |
텍스트 | get규칙 만들기규칙을위한 명령 |
PG_GET_RULEDEF (rule_oid, pretty_bool) |
텍스트 | get규칙 만들기규칙을위한 명령 |
pg_get_serial_sequence (table_name, column_name) |
텍스트 | a 시퀀스 이름을 얻으십시오.Serial, SmallSerial또는bigserial열 용도 |
pg_get_triggerDef (trigger_oid) |
텍스트 | get[구속 조건] 트리거 만들기트리거 명령 |
pg_get_triggerDef (trigger_oid, pretty_bool) |
텍스트 | get[구속 조건] 트리거 만들기트리거 명령 |
PG_GET_USERBYID (역할 _oid) |
이름 | 주어진 OID로 역할 이름 가져 오기 |
pg_get_viewdef (View_Name) |
텍스트 | 기본select보기 또는 구체화 된보기에 대한 명령 (감가 상각) |
pg_get_viewdef (View_Name, pretty_bool) |
텍스트 | 기본select보기 또는 구체화 된보기에 대한 명령 (감가 상각) |
pg_get_viewdef (View_oid) |
텍스트 | 기본select보기 또는 구체화 된보기에 대한 명령 |
pg_get_viewdef (View_oid, pretty_bool) |
텍스트 | 기본select보기 또는 구체화 된보기에 대한 명령 |
pg_get_viewdef (View_oid, wrap_column_int) |
텍스트 | 기본select보기 또는 구체화 된보기에 대한 명령; 필드가있는 라인이 지정된 수의 열에 싸여 있으며, 꽤 인쇄된다 |
pg_index_column_has_property (index_oid, column_no, prop_name) |
부울 | 인덱스 열에 지정된 속성이 있는지 테스트 |
pg_index_has_property (index_oid, prop_name) |
부울 | 인덱스에 지정된 속성이 있는지 테스트 |
pg_indexam_has_property (am_oid, prop_name) |
부울 | 인덱스 액세스 방법에 지정된 속성이 있는지 테스트 |
pg_options_to_table (재학) |
Setof Record | 스토리지 옵션 세트 가져 오기 이름/값 쌍 |
PG_TABLESPACE_DATABASES (TableSpace_oid) |
OID 세트 | 테이블 스페이스에 객체가있는 데이터베이스 OID 세트를 가져옵니다 |
pg_tablespace_location (TableSpace_oid) |
텍스트 | 이 테이블 스페이스에있는 파일 시스템의 경로를 가져옵니다 |
pg_typeof (any) |
Regtype | 값의 데이터 유형 가져 오기 |
Collation for (any) |
텍스트 | 인수의 협력을 받으십시오 |
TO_REGCLASS (rel_name) |
Regclass | 지명 된 관계의 OID 받기 |
to_regproc (func_name) |
Regproc | 지명 된 함수의 OID 받기 |
to_regprocedure (func_name) |
레지비어 | 지명 된 함수의 OID 받기 |
to_regoper (OPERATOR_NAME) |
Regoper | 지명 된 연산자의 OID 받기 |
to_regoperator (OPERATOR_NAME) |
Regoperator | 지명 된 연산자의 OID 받기 |
to_regtype (type_name) |
Regtype | 명명 된 유형의 OID 받기 |
to_regnamespace (Schema_Name) |
regnamespace | 명명 된 스키마의 OID 받기 |
TO_REGROLE (role_name) |
Resprole | 지정된 역할의 OID 받기 |
format_type
유형 OID 및 유형 수정 자로 식별되는 데이터 유형의 SQL 이름을 반환합니다. 특정 수정자가 알려지지 않은 경우 유형 수정 자의 NULL을 전달하십시오.
pg_get_keywords
서버에서 인식 한 SQL 키워드를 설명하는 일련의 레코드를 반환합니다. 그만큼Word열에는 키워드가 포함되어 있습니다. 그만큼catcode열은 카테고리 코드가 포함되어 있습니다 :U예방 대상,C열 이름,T유형 또는 함수 이름 또는R예약. 그만큼catdesc열은 범주를 설명하는 국소화 된 문자열을 포함합니다.
pg_get_constraintdef
, pg_get_indexdef
, PG_GET_RULEDEF
및pg_get_triggerDef
, 각각 제약 조건, 인덱스, 규칙 또는 트리거에 대한 작성 명령을 재구성합니다. (이것은 명령의 원본 텍스트가 아니라 소환 된 재구성입니다.)pg_get_expr
열의 기본값과 같은 개별 표현식의 내부 형태를 디 컴파일합니다. 시스템 카탈로그의 내용을 검사 할 때 유용 할 수 있습니다.pg_get_viewdef
재구성select보기를 정의하는 쿼리. 이러한 기능의 대부분은 두 가지 변형으로 제공되며 그 중 하나는 선택적으로"Pretty-Print"결과. 예쁜 인쇄 형식은 더 읽기 쉽지만 기본 형식은 향후 버전의에 의해 같은 방식으로 해석 될 가능성이 높습니다.PostgreSQL; 덤프 목적으로 인쇄 된 출력을 사용하지 마십시오.거짓Pretty Print 매개 변수의 경우 매개 변수가 전혀없는 변형과 동일한 결과를 얻습니다.
pg_get_functionDef
전체 반환함수 생성 또는 교체함수에 대한 명령문.pg_get_function_arguments
함수의 인수 목록을 반환합니다.기능 생성. pg_get_function_result
마찬가지로 적절한 것을 반환합니다반환함수에 대한 조항.pg_get_function_identity_arguments
함수를 식별하는 데 필요한 인수 목록을 반환합니다.Alter Function44430_44477
PG_GET_SERIAL_SEATENCE
열과 관련된 시퀀스의 이름을 반환하거나 열과 관련된 시퀀스가없는 경우 NULL을 반환합니다. 첫 번째 입력 매개 변수는 선택적 스키마가있는 테이블 이름이고 두 번째 매개 변수는 열 이름입니다.섹션 9.16). 이 협회는와 함께 수정하거나 제거 할 수 있습니다.Alter Sequence 소유. (이 기능은 아마도라고 불렀을 것입니다.pg_get_owned_sequence
; 현재 이름은 일반적으로와 함께 사용된다는 사실을 반영합니다.Serial또는bigserial열)
PG_GET_USERBYID
OID가 주어진 역할 이름을 추출합니다.
PG_INDEX_COLUMN_HAS_PROPERTY
, pg_index_has_property
및PG_INDEXAM_HAS_PROPERTY
지정된 인덱스 열, 인덱스 또는 인덱스 액세스 방법이 지명 된 속성을 가지고 있는지 여부를 반환합니다.NULL속성 이름이 알려지지 않았거나 특정 개체에 적용되지 않거나 OID 또는 열 번호가 유효한 개체를 식별하지 않은 경우 반환됩니다. 참조표 9-63열 속성의 경우표 9-64인덱스 속성 및표 9-65액세스 방법 속성. (확장 액세스 방법은 인덱스의 추가 속성 이름을 정의 할 수 있습니다.)
표 9-63. 색인 열 속성
이름 | 설명 |
---|---|
ASC | 전방 스캔에서 열이 오름차순 순서로 정렬됩니까? |
desc | 전방 스캔에서 열이 내림차순 순서로 정렬됩니까? |
nulls_first | 전방 스캔에서 열이 널과 먼저 정렬됩니까? |
nulls_last | 열이 전방 스캔에서 널로 정렬됩니까? |
주문 가능 | 열에 정의 된 정렬 순서가 있습니까? |
거리 _orderable | 열을 순서대로 스캔 할 수 있습니까"거리"운영자, 예를 들어col <-> constant의 주문 ? |
returable | 인덱스 전용 스캔으로 열 값을 반환 할 수 있습니까? |
search_array | 열이 기본적으로 지원col = any (배열)검색? |
search_nulls | 열이 지원됩니다is nulland검색? |
표 9-64. 인덱스 속성
이름 | 설명 |
---|---|
클러스터 가능 | 인덱스를 a에 사용할 수 있습니까?클러스터명령? |
index_scan | 인덱스가 일반 (비 비트 맵) 스캔을 지원합니까? |
bitmap_scan | 인덱스가 비트 맵 스캔을 지원합니까? |
backward_scan | 스캔 방향을 스캔 중간에서 변경할 수 있습니까 (지원하기뒤로 페치구체화가 필요없는 커서에서)? |
표 9-65. 색인 액세스 방법 속성
이름 | 설명 |
---|---|
can_order | 액세스 메소드가 지원ASC, desc및 관련 키워드색인 생성? |
can_unique | 액세스 방법이 고유 인덱스를 지원합니까? |
can_multi_col | 액세스 방법이 여러 열에서 인덱스를 지원합니까? |
can_exclude | 액세스 방법이 제외 제약 조건을 지원합니까? |
pg_options_to_table
스토리지 옵션 세트를 반환합니다. 이름/값 쌍 (옵션 _name/옵션 _value) 통과시pg_class.재학또는pg_attribute.attoptions.
PG_TABLESPACE_DATABASES
테이블 스페이스를 검사 할 수 있습니다. 테이블 스페이스에 저장된 개체가있는 데이터베이스의 OID 세트를 반환합니다.PG_TABLESPACE_DATABASES
querypg_class카탈로그.
pg_typeof
전달 된 값의 데이터 유형의 OID를 반환합니다. 이는 SQL 쿼리 문제 해결 또는 동적 구성에 도움이 될 수 있습니다.Regtype, OID 별칭 유형입니다 (참조PostgreSQL : 문서 : 9.6 : 객체 식별자 토토 결과); 이것은 비교 목적으로 OID와 동일하지만 유형 이름으로 표시됨을 의미합니다.
PG_TYPEOF (33) 선택;
표현Collation for전달 된 값의 값을 반환합니다. 예:
PG_DESCRIPTION LIMIT 1에서 (설명)에 대한 Collation을 선택합니다.
값은 인용되고 스키마 자격이 될 수 있습니다. 인수 표현식에 대한 collation이 도출되지 않으면 널 값이 반환됩니다.
theto_regclass
, to_regproc
, to_regprocedure
, to_regoper
, to_regoperator
, to_regtype
, to_regnamespace
및TO_REGROLE
함수 관계, 함수, 연산자, 유형, 스키마 및 역할 이름을 번역합니다 (as at텍스트) 유형의 개체Regclass, Regproc, 레지비어, Regoper, Regoperator, Regtype, regnamespace및Resprole각각. 이러한 기능은 숫자 OID를 허용하지 않으며 이름을 찾을 수없는 경우 오류를 던지지 않고 널을 반환한다는 점에서 텍스트와의 캐스트와 다릅니다 (또는 for.to_regproc
andto_regoper
, 주어진 이름이 여러 개체와 일치하는 경우).
표 9-66데이터베이스 개체 식별 및 주소와 관련된 기능을 나열합니다.
표 9-66. Object Information and Addressing Functions
이름 | 반환 유형 | 설명 |
---|---|---|
pg_describe_object (classId OID, objid OID, objsubid Integer) |
텍스트 | 데이터베이스 개체 설명 |
pg_identify_object (classId OID, objid OID, objsubid Integer) |
타입 텍스트, 스키마 텍스트, 이름 텍스트, Identity 텍스트 | 데이터베이스 객체의 ID 받기 |
pg_identify_object_as_address (classId OID, objid OID, objsubid Integer) |
타입 텍스트, Object_Names 텍스트 [], Object_args 텍스트 [] | 데이터베이스 객체의 주소를 외부 표현하기 |
pg_get_object_address (타입 텍스트, 이름 텍스트 [], args 텍스트 []) |
classId OID, objid OID, objsubid Integer | 외부 표현에서 데이터베이스 개체의 주소 가져 오기 |
pg_describe_object
Catalog OID, Object OID 및 Sub-Bobject ID (예 : 표의 열 번호)로 지정된 데이터베이스 개체에 대한 텍스트 설명을 반환합니다. 이 설명은 사람이 읽을 수 있으며 서버 구성에 따라 번역 될 수 있습니다.pg_depend카탈로그
pg_identify_object
Catalog OID, Object OID 및 Sub-Object ID로 지정된 데이터베이스 개체를 고유하게 식별하기에 충분한 정보가 포함 된 행을 반환합니다. 이 정보는 기계를 읽을 수 있도록 의도되었으며 번역되지 않습니다.타입데이터베이스 객체의 유형을 식별;스키마객체가 속한 스키마 이름, 또는NULL스키마에 속하지 않는 객체 유형의 경우;이름객체의 이름이며, 필요한 경우 (관련된 경우 스키마 이름과 함께) 객체를 고유하게 식별하기에 충분한 경우, 필요한 경우 필요한 경우 인용합니다.NULL; Identity| 객체 유형에 따라 정확한 형식을 갖는 완전한 개체 아이덴티티이며, 각 이름 내의 각 이름은 스키마 자격을 갖추고 필요에 따라 인용됩니다..
pg_identify_object_as_address
65267_65555타입데이터베이스 객체의 유형을 식별;Object_NamesandObject_args개체에 대한 참조를 형성하는 텍스트 배열입니다. 이 세 값은 전달 될 수 있습니다pg_get_object_address
객체의 내부 주소를 얻으려면. 이 기능은의 역수입니다.pg_get_object_address
.
pg_get_object_address
유형 및 오브젝트 이름 및 인수 배열로 지정된 데이터베이스 개체를 고유하게 식별하기에 충분한 정보가 포함 된 행을 반환합니다. 반환 된 값은 값과 같은 시스템 카탈로그에 사용되는 값입니다.pg_depend와 같은 다른 시스템 기능으로 전달할 수 있습니다pg_identify_object
또는pg_describe_object
. classId객체를 포함하는 시스템 카탈로그의 OID입니다.objid객체 자체의 외침이며objsubid는 서브 객체 ID 또는 0이면 0입니다. 이 기능은의 역수입니다.pg_identify_object_as_address
.
표 9-67이전에 저장된 주석 추출PostgreSQL : 문서 : 9.6 : 토토 캔명령. 지정된 매개 변수에 대한 주석을 찾을 수없는 경우 널 값이 반환됩니다.
표 9-67. 의견 정보 기능
이름 | 반환 유형 | 설명 |
---|---|---|
col_description (table_oid, column_number) |
텍스트 | 테이블 열에 대한 댓글 받기 |
obj_description (Object_oid, catalog_name) |
텍스트 | 데이터베이스 개체에 대한 주석 받기 |
obj_description (Object_oid) |
텍스트 | 데이터베이스 개체에 대한 주석 받기 (감가 상각) |
shobj_description (Object_oid, catalog_name) |
텍스트 | 공유 데이터베이스 개체에 대한 주석 받기 |
col_description
테이블의 OID 및 열 번호로 지정된 테이블 열에 대한 주석을 반환합니다. (obj_description
열에는 OID가 없으므로 테이블 열에 사용할 수 없습니다.)
2 파라미터 형태obj_description
OID와 포함 시스템 카탈로그의 이름으로 지정된 데이터베이스 개체에 대한 주석을 반환합니다. 예를 들어,obj_description (123456, 'pg_class')OID 123456을 사용하여 테이블에 대한 주석을 검색 할 것입니다. 1 개의 파라미터 형태obj_description
객체 OID 만 필요합니다. OID가 다른 시스템 카탈로그에서 독특하다는 보장이 없기 때문에 더 이상 사용되지 않습니다.
shobj_description
처럼 사용됩니다obj_description
공유 객체에 대한 의견을 검색하는 데 사용됩니다. 일부 시스템 카탈로그는 각 클러스터 내의 모든 데이터베이스에 전 세계적이며 그 객체에 대한 설명은 전 세계적으로 저장됩니다.
표 9-68서버 트랜잭션 정보를 내보낼 수있는 형태로 제공합니다. 이러한 기능의 주요 용도는 두 개의 스냅 샷 사이에 어떤 트랜잭션이 커밋되었는지 결정하는 것입니다.
표 9-68. 트랜잭션 ID 및 스냅 샷
이름 | 반환 유형 | 설명 |
---|---|---|
TXID_CURRENT () |
bigint | 현재 트랜잭션 ID 받기, 현재 트랜잭션 ID가 없으면 새 트랜잭션 ID를 할당합니다. |
TXID_CURRENT_SNAPSHOT () |
TXID_SNAPSHOT | 현재 스냅 샷 가져 오기 |
TXID_SNAPSHOT_XIP (TXID_SNAPSHOT) |
bigint | Snapshot에서 진행중인 트랜잭션 ID 받기 |
TXID_SNAPSHOT_XMAX (TXID_SNAPSHOT) |
bigint | getxmaxof snapshot |
TXID_SNAPSHOT_XMIN (TXID_SNAPSHOT) |
bigint | getxminof snapshot |
txid_visible_in_snapshot (bigint, TXID_SNAPSHOT) |
부울 | 스냅 샷에 트랜잭션 ID가 표시됩니까? (서브 트랜잭션 ID와 함께 사용하지 마십시오) |
내부 트랜잭션 ID 유형 (xid)는 너비가 32 비트이며 40 억 건의 거래마다 랩핑됩니다. 그러나 이러한 기능은 64 비트 형식을 내보내며"Epoch"카운터는 설치 중에 감싸지 않습니다. 이러한 기능에 사용되는 데이터 유형TXID_SNAPSHOT, 특정 순간에 트랜잭션 ID 가시성에 대한 정보를 저장합니다. 그 구성 요소는에 설명되어 있습니다.표 9-69.
표 9-69. 스냅 샷 구성 요소
이름 | 설명 |
---|---|
xmin | 여전히 활성화 된 최초의 트랜잭션 ID (TXID). 모든 초기 거래는 커밋되고 눈에 보이거나 롤백 및 죽은 사람입니다. |
xmax | 첫 번째로 조정되지 않은 TXID. 스냅 샷 시점에서 아직 이와 같은 모든 TXID가 아직 시작되지 않았으므로 보이지 않습니다. |
xip_list | 스냅 샷시 활성 TXIDS. 목록에는 사이의 활성 TXID 만 포함됩니다.xminandxmax; 활성 TXID가보다 높을 수 있습니다.xmax. TXIDxmin <= txid |
TXID_SNAPSHOT의 텍스트 표현은xmin:xmax:xip_list. 예를 들어10 : 20 : 10,14,15평균xmin = 10, xmax = 20, xip_list = 10, 14, 15.
표 9-70이미 커밋 된 거래에 대한 정보를 제공합니다. 이러한 기능은 주로 거래가 진행되는시기에 대한 정보를 제공합니다.track_commit_timestamp구성 옵션이 활성화되어 있으며 활성화 된 후 커밋 된 트랜잭션에 대해서만 가능합니다.
표 9-70. 커밋 된 거래 정보
이름 | 반환 유형 | 설명 |
---|---|---|
PG_XACT_COMMIT_TIMESTAMP (xid) |
시간대가있는 타임 스탬프 | 트랜잭션의 커밋 타임 스탬프 받기 |
pg_last_committed_xact () |
xid xid, 타임 스탬프 시간대가있는 타임 스탬프 | 트랜잭션 ID 받기 및 최신 커밋 된 트랜잭션의 타임 스탬프 |
표 9-71초기 정보가 초기화 된 인쇄initdb74761_75011PostgreSQL: Documentation:SQL기능.
표 9-71. 데이터 기능 제어
이름 | 반환 유형 | 설명 |
---|---|---|
pg_control_checkpoint () |
레코드 | 현재 체크 포인트 상태에 대한 정보를 반환합니다. |
PG_CONTROL_SYSTEM () |
레코드 | 현재 제어 파일 상태에 대한 정보를 반환합니다. |
PG_CONTROL_INIT () |
레코드 | 클러스터 초기화 상태에 대한 정보를 반환합니다. |
PG_CONTROL_RECOVERY () |
레코드 | 복구 상태에 대한 정보를 반환합니다. |
PG_CONTROL_CHECKPOINT
record를 반환합니다.표 9-72
표 9-72.PG_CONTROL_CHECKPOINT
열
열 이름 | 데이터 유형 |
---|---|
Checkpoint_location | PG_LSN |
Prior_location | PG_LSN |
redo_location | PG_LSN |
redo_wal_file | 텍스트 |
timeline_id | Integer |
prev_timeline_id | Integer |
full_page_writes | 부울 |
next_xid | 텍스트 |
next_oid | OID |
next_multixact_id | xid |
next_multi_offset | xid |
Oldest_xid | xid |
Oldest_xid_dbid | OID |
Oldest_active_xid | xid |
Oldest_multi_xid | xid |
Oldest_multi_dbid | OID |
Oldest_commit_ts_xid | xid |
최신 _commit_ts_xid | xid |
Checkpoint_Time | 시간대가있는 타임 스탬프 |
PG_CONTROL_SYSTEM
record를 반환합니다.표 9-73
표 9-73.PG_CONTROL_SYSTEM
열
열 이름 | 데이터 유형 |
---|---|
PG_CONTROL_VERSION | Integer |
catalog_version_no | Integer |
SYSTEM_IDENIFIER | bigint |
pg_control_last_modified | 시간대가있는 타임 스탬프 |
PG_CONTROL_INIT
record를 반환합니다.표 9-74
표 9-74.PG_CONTROL_INIT
열
열 이름 | 데이터 유형 |
---|---|
max_data_alignment | Integer |
database_block_size | Integer |
blocks_per_segment | Integer |
Wal_block_size | Integer |
bytes_per_wal_segment | Integer |
max_identifier_length | Integer |
max_index_columns | Integer |
max_toast_chunk_size | Integer |
marge_object_chunk_size | Integer |
bigint_timestamps | 부울 |
float4_pass_by_value | 부울 |
float8_pass_by_value | 부울 |
data_page_checksum_version | Integer |
PG_CONTROL_RECOVERY
record를 반환합니다.표 9-75