2011-09-07 4 views
1
에서 statemant을 만들

나는 포스트 그레스에서 다음과 같은 순서로 작성하는 경우 : 다음보조금은 pgAdmin

CREATE SEQUENCE test 
    INCREMENT 1 
    MINVALUE 1 
    MAXVALUE 9223372036854775807 
    START 1 
    CACHE 1; 
GRANT ALL ON SEQUENCE test TO testuser; 
GRANT SELECT ON SEQUENCE test TO testuser2; 

그리고 pgAdmin의 순서, 마우스 오른쪽 클릭을 선택합니다 -> 스크립트를 작성, 내가 얻을 :

CREATE SEQUENCE test 
    INCREMENT 1 
    MINVALUE 1 
    MAXVALUE 9223372036854775807 
    START 1 
    CACHE 1; 
ALTER TABLE test 
    OWNER TO testuser; 
GRANT ALL ON TABLE test TO testuser; 
GRANT SELECT ON TABLE test TO testuser2; 
그랜트 문에서

그래서 나는 키워드 "표"가 아니라 "SEQUENCE"

  1. 왜이 보여?
  2. pgAdmin에서 DDL 추출물을 생성하는 방법은 무엇입니까?

은이 질문은 여기 내 다른 질문 중 하나와 관련이 :
Query GRANTS granted to a sequence in postgres

답변

1

PostgreSQL의에서 시퀀스 종류의 테이블 등이있다.

카탈로그 pg_class 카탈로그 테이블과 열이 나 테이블에 다른 유사하다 다른 대부분의 모든 것을. 여기에는 인덱스 ( pg_index도 참조), 시퀀스, 뷰, 복합 유형 및 TOAST 테이블이 포함됩니다. relkind를 참조하십시오.

시스템 카탈로그의

PostgreSQL docs for pg_class, 하나 (시스템 테이블)

+0

그러나 PgAdmin는 "TESTUSER 모든 표 테스트 ON GRANT"와 같은 staements을 만들 않는 방법? 좋아, ACL 정보는 pg_class의 "relacl"열에서 사용할 수 있지만, "{postgres = arwdDxt/postgres}"와 같은 것을 "GRANT SELECT ..."로 변환하는 데 약간의 프로그래밍 작업이 필요합니다. SQL. 시퀀스에 대한 information_schema.role_table_grants와 유사한 테이블이 있습니까? – markus

+0

@markus : 지연을 드려 죄송합니다. 나는 당신의 의견을 간과했다. pgAdmin이 SQL 창에 대해 SQL을 생성하는 방법을 모르지만 [소스 코드 다운로드] (http://www.pgadmin.org/download/source.php) 할 수 있습니다. 내가 알 수있는 한, 시퀀스에 대한 권한을 노출하는 information_schema 뷰는 없습니다. –