PostgreSQL에서 보기에 대한 CREATE VIEW 코드를 보는 방법은 무엇입니까?
Postgre를 사용하여 보기를 만드는 데 사용되는 코드를 쉽게 볼 수 있는 방법이 있습니까?SQL 명령줄 클라이언트?
그와 비슷한 것.SHOW CREATE VIEWMySQL에서.
계속해서 이곳으로 돌아와야 했습니다.pg_get_viewdef(그것을 기억하는 방법!!), 그래서 더 기억에 남는 명령어를 검색했습니다.그리고 그것을 얻었습니다.
\d+ viewname
다음을 입력하여 유사한 종류의 명령을 볼 수 있습니다.\?pgsql 명령줄에서.
보너스 팁:emacs 명령sql-postgrespgsql을 훨씬 더 쾌적하게 만듭니다(편집, 복사, 붙여넣기, 명령 기록).
select pg_get_viewdef('viewname', true)
이러한 모든 기능의 목록은 설명서에서 확인할 수 있습니다.
http://www.postgresql.org/docs/current/static/functions-info.html
select definition from pg_views where viewname = 'my_view'
ANSI SQL-92 버전을 원하는 경우:
select view_definition from information_schema.views where table_name = 'view_name';
v9.6 이상의 좋은 소식입니다.보기 편집은 이제 psql에서 기본으로 제공됩니다.호출하기\ev지휘권보기 정의가 구성된 편집기에 표시됩니다.
julian@assange=# \ev your_view_names
보너스. 쿼리 버퍼와 상호 작용하는 데 유용한 명령입니다.
Query Buffer
\e [FILE] [LINE] edit the query buffer (or file) with external editor
\ef [FUNCNAME [LINE]] edit function definition with external editor
\ev [VIEWNAME [LINE]] edit view definition with external editor
\p show the contents of the query buffer
\r reset (clear) the query buffer
\s [FILE] display history or save it to file
\w FILE write query buffer to file
인psqlcli, 당신은 사용할 수 있습니다.
\d+ <yourViewName>
\sv <yourViewName>
출력은 다음과 같습니다.
\d+ v_ma_students
View "public.v_ma_students"
Column | Type | Collation | Nullable | Default | Storage | De
scription
--------+-----------------------+-----------+----------+---------+----------+---
SOMETHINGS HERE
View definition:
SELECT student.sno,
student.sname,
student.ssex,
student.sage,
student.sdept
FROM student
WHERE student.sdept::text = 'MA'::text;
Options: check_option=cascaded
\sv v_ma_students
CREATE OR REPLACE VIEW public.v_ma_students AS
SELECT student.sno,
student.sname,
student.ssex,
student.sage,
student.sdept
FROM student
WHERE student.sdept::text = 'MA'::text
WITH CASCADED CHECK OPTION
이것들은 지적해야 할 작은 것들입니다.
기능 사용pg_get_viewdef또는pg_views또는 information_discovery.보기에는 항상 원래 DDL의 다시 작성된 버전이 표시됩니다.
다시 작성된 버전이 원래 DDL 스크립트와 같을 수도 있고 그렇지 않을 수도 있습니다.
규칙 관리자가 보기 정의를 다시 작성하면 원래 DLL이 손실되고 다시 작성된 보기 정의 버전만 읽을 수 있습니다.
모든 보기가 다시 작성되는 것은 아니지만, 하위 선택 또는 조인을 사용하는 경우 보기가 다시 작성될 수 있습니다.
명령줄 클라이언트 psql에서 다음 명령을 사용할 수 있습니다.
\sv <VIEWNAME>
'CREATE TABLE...' 쿼리를 찾는 간단한 방법은 이 쿼리를 사용하는 것입니다.
SHOW TABLE your_schema_name.your_table_name
언급URL : https://stackoverflow.com/questions/14634322/how-to-see-the-create-view-code-for-a-view-in-postgresql
'codememo' 카테고리의 다른 글
| 자동 배치 - 절반의 수퍼뷰 높이를 기준으로 높이 설정 (0) | 2023.05.03 |
|---|---|
| 매우 큰 테이블에서 정확한 행 수를 계산하는 가장 빠른 방법은 무엇입니까? (0) | 2023.05.03 |
| WPF에 "All Children loaded" 이벤트가 있습니까? (0) | 2023.05.03 |
| OS X에서 환경 변수 설정 (0) | 2023.05.03 |
| 의 기준 매개 변수와 출력 매개 변수 간의 차이입니다.그물 (0) | 2023.05.03 |