개체 탐색기

Visual Studio Code PostgreSQL 확장의 개체 탐색기는 PostgreSQL 서버, 데이터베이스, 스키마 및 개별 데이터베이스 개체의 트리 보기를 제공합니다. 편집기를 벗어나지 않고 테이블, 뷰, 함수 및 기타 개체를 찾아보고, 스키마를 검색하고, SQL 스크립트를 생성할 수 있습니다.

Tip

개체 탐색, 검색 및 스크립트 생성에 개체 탐색기를 사용합니다. 테이블 관계의 시각적 다이어그램을 원하는 경우 스키마 시각화 도우미를 엽니다.

개체 탐색기 열기

작업 표시줄에서 PostgreSQL 아이콘을 선택하여 PostgreSQL 보기를 엽니다. Ctrl+Alt+D(Windows/Linux) 또는 Cmd+Alt+D(macOS)를 누를 수도 있습니다.

보기에는 축소 가능한 트리에 서버를 표시하는 연결 섹션이 포함되어 있습니다. 연결된 서버에 녹색 아이콘이 표시됩니다. 연결이 끊긴 서버에 빨간색 아이콘이 표시됩니다. 연결이 없으면 연결을 시작하는 데 도움이 되는 연결 추가 노드가 나타납니다.

트리 계층 구조

개체 탐색기는 데이터베이스 개체를 일관된 계층 구조로 구성합니다.

Server → Database → 스키마 → 객체 컬렉션

기본적으로 개체는 스키마별로 그룹화됩니다. 각 스키마 아래에서 다음과 같은 컬렉션 폴더를 찾습니다.

  • 테이블: 테이블을 확장하여 , , 인덱스, 제약 조건트리거를 확인합니다.
  • 조회 수
  • 저장 프로시저
  • 함수: 별도의 폴더에 스칼라 반환, 테이블 반환 및 집계 함수 포함
  • 시퀀스
  • 형식: 사용자 정의 형식 및 사용자 정의 테이블 형식

정확한 컬렉션 폴더 집합은 데이터베이스에 있는 개체에 따라 달라지고 백 엔드 도구 서비스에 의해 채워집니다.

컬렉션 폴더를 확장하여 개별 개체를 확인합니다. 테이블의 경우 열, 키(기본, 외외, 고유), 인덱스, 제약 조건 및 트리거를 자세히 살펴볼 수 있습니다.

메모

이 설정은 pgsql.objectExplorer.expandTimeout 노드를 확장할 때 확장이 대기하는 시간을 제어합니다. 기본값은 45초입니다. 로드하는 데 더 오래 걸리는 큰 스키마를 사용하는 경우 이 값을 늘림

스키마별로 그룹화

pgsql.objectExplorer.groupBySchema 설정을 사용하도록 설정하면(기본값) 데이터베이스 개체가 해당 스키마 노드 아래에 표시됩니다. 이 동작을 토글하려면 다음을 수행합니다.

  1. 명령 팔레트를 엽니다(Ctrl+Shift+P / Cmd+Shift+P).
  2. 스키마별로 그룹 사용 또는 스키마별 그룹 사용 안 함 실행

그룹 스키마를 사용하지 않도록 설정하면 개체 컬렉션 폴더가 개별 스키마가 아닌 데이터베이스 노드 바로 아래에 표시됩니다.

서버 연결 및 관리

연결 트리에서 직접 서버 연결을 관리합니다 . 연결 섹션의 맨 위에 있는 도구 모음과 마우스 오른쪽 단추로 클릭하는 상황에 맞는 메뉴는 다음 작업을 제공합니다.

도구 모음 작업

단추 Command Description
+ 새 연결 추가 연결 대화 상자를 열어 기존 PostgreSQL 서버를 추가합니다.
서버 아이콘 새 서버 만들기 새 Azure Database for PostgreSQL 유연한 서버를 배포하거나 Docker 기반 서버를 만들 수 있는 만들기 허브를 엽니다.
폴더 아이콘 서버 그룹 만들기 연결을 구성하는 새 서버 그룹을 만듭니다.
필터 아이콘 연결된 서버 / 만 표시연결된 서버 및 연결이 끊긴 서버 표시 트리에서 연결이 끊긴 서버의 표시 유형을 전환합니다.
검색 아이콘 개체 검색 검색 패널을 엽니다.

서버 상황에 맞는 메뉴

서버 노드를 마우스 오른쪽 단추로 클릭하여 다음 명령에 액세스합니다.

  • 개체 검색: 이 서버 범위로 한정된 검색 패널을 엽니다.
  • 연결 편집: 이 서버에 대해 저장된 설정을 사용하여 연결 대화 상자를 다시 엽니다.
  • 연결 끊기: 활성 연결을 닫습니다. 서버는 나중에 다시 연결할 수 있도록 빨간색 아이콘이 있는 트리에 유지됩니다.
  • 제거: 연결 트리에서 서버 항목을 완전히 삭제 합니다 .
  • 새로 고침: 서버의 자식 노드를 다시 로드합니다. VS Code 외부에서 스키마를 변경한 후에 사용합니다.

메모

연결 끊김 은 연결된 서버에만 나타납니다. 제거 는 연결된 서버와 연결이 끊긴 서버 모두에서 사용할 수 있습니다.

데이터베이스 상황에 맞는 메뉴

액세스하려면 데이터베이스 노드를 마우스 오른쪽 단추로 클릭합니다.

  • 새 쿼리: 이 데이터베이스에 이미 연결된 쿼리 편집기를 엽니다.
  • PSQL을 사용하여 연결: .를 사용하여 이 데이터베이스 psql에 연결된 통합 터미널 세션을 엽니다. 자세한 내용은 터미널에서 psql 사용을 참조하세요.
  • 스키마 시각화: 이 데이터베이스에 대한 스키마 시각화 도우미 를 엽니다.
  • 검색 개체: 이 데이터베이스로 범위가 지정된 검색 패널을 엽니다.

스키마 노드를 마우스 오른쪽 단추로 클릭하여 스키마 시각화(해당 스키마 로 범위 지정) 및 검색 개체에 액세스합니다.

서버 그룹

서버 그룹을 사용하면 명명된 폴더로 연결을 구성할 수 있습니다. 이는 여러 환경 또는 팀에서 여러 서버로 작업할 때 유용합니다.

  1. 연결 도구 모음에서 폴더 아이콘(서버 그룹 만들기)을 선택하거나 명령 팔레트를 열고 PGSQL: 서버 그룹 만들기를 실행합니다.
  2. 그룹의 이름, 선택적 설명 및 색을 입력합니다.
  3. 확인을 선택합니다.

그룹은 연결 트리에 폴더로 나타납니다. 서버 노드를 그룹으로 끌어 다시 구성할 수 있습니다. 그룹을 수정하려면 그룹을 마우스 오른쪽 단추로 클릭하고 서버 그룹 편집을 선택합니다. 그룹을 삭제하려면 마우스 오른쪽 단추를 클릭하고 제거를 선택합니다.

연결 추가 또는 새 서버 만들기를 사용하여 해당 그룹에 직접 연결을 추가하려면 서버 그룹을 마우스 오른쪽 단추로 클릭합니다.

개체 찾기

큰 데이터베이스에서 특정 개체를 찾아야 하는 경우 트리 노드를 수동으로 확장하는 대신 기본 제공 검색을 사용합니다.

연결 도구 모음에서 검색 아이콘을 선택하여 검색 패널 엽니다. 서버, 데이터베이스 또는 스키마 노드를 마우스 오른쪽 단추로 클릭하고 검색 개체 를 선택하여 범위를 미리 채울 수도 있습니다.

검색 패널에서는 다음 컨트롤을 제공합니다.

Control Description
연결 선택 검색할 서버 연결을 선택합니다. 드롭다운 목록에는 연결 상태(연결 / 끊김)와 호스트, 포트 및 사용자와 같은 세부 정보가 표시됩니다.
데이터베이스 선택 검색할 데이터베이스를 선택합니다.
모든 스키마 결과를 특정 스키마로 좁히거나 모든 스키마 로 설정하여 모든 위치에서 검색합니다.
모든 형식 개체 유형별로 필터링합니다. 테이블, 뷰, 함수, 저장 프로시저 및 시퀀스와 같은 형식의 조합을 선택합니다.
개체 검색... 개체 이름과 일치하는 부분 문자열을 입력합니다. 검색은 대/소문자를 구분하지 않습니다.

검색을 선택하여 쿼리를 실행합니다. 결과는 개체 이름, 형식개체 경로 열이 있는 표에 표시됩니다. 결과 행을 선택하여 트리에서 해당 개체로 직접 이동합니다. 연결 트리는 필요한 노드를 자동으로 확장합니다.

데이터베이스 개체 스크립팅

연결 트리에서 데이터베이스 개체에 대한 SQL 스크립트를 직접 생성할 수 있습니다 . 스크립트 가능 개체를 마우스 오른쪽 단추로 클릭하여 스크립팅 명령에 액세스합니다.

Command 사용 가능 생성된 SQL
상위 1000개 선택 테이블, 뷰 SELECT 처음 1,000개의 행을 반환하는 쿼리입니다.
스크립트를 Create로 테이블, 뷰, 스키마, 저장 프로시저, 함수, 트리거, 인덱스, 키, 역할, 형식 전체 CREATE DDL 문입니다.
Drop으로 스크립트 Script as Create와 동일 DROP 객체에 대한 문
Alter로서의 스크립트 뷰, 함수, 저장 프로시저 ALTER 개체에 대한 설명입니다.
스크립트로 실행 저장 프로시저 CALL 또는 SELECT 루틴을 실행하는 문입니다.

생성된 각 스크립트는 원본 개체와 동일한 데이터베이스에 연결된 새 쿼리 편집기 탭에서 열립니다. 스크립트를 즉시 검토, 편집 및 실행할 수 있습니다.

Tip

상위 1000을 선택하는 것이 테이블 데이터를 미리 보는 가장 빠른 방법입니다. 테이블을 마우스 오른쪽 단추로 클릭하고 상위 1000을 선택하여 한 단계에서 쿼리를 열고 실행합니다.

이름 복사

연결 트리에서 폴더가 아닌 개체를 마우스 오른쪽 단추로 클릭하고 이름 복사를 선택하여 정규화된 이름을 클립보드에 복사합니다. 노드를 선택하고 Ctrl+C(Windows/Linux) 또는 Cmd+C(macOS)를 누를 수도 있습니다.

복사된 이름은 SQL 쿼리에 [database].schema.[object] 붙여넣을 준비가 된 대괄호 표기법 형식을 사용합니다.

개체 탐색기에서 새 쿼리

데이터베이스 노드를 마우스 오른쪽 단추로 클릭하고 새 쿼리 를 선택하여 해당 데이터베이스에 이미 연결된 쿼리 편집기를 엽니다. 편집기에서 서버 연결을 상속하고 선택한 데이터베이스를 대상으로 하므로 쿼리 작성을 즉시 시작할 수 있습니다.

트리 노드 필터링

일부 컬렉션 폴더는 표시되는 개체의 범위를 좁히기 위한 필터링을 지원합니다. 노드를 필터링할 수 있는 경우 마우스 오른쪽 단추로 클릭하고 필터 를 선택하여 필터 패널을 엽니다. 개체 속성에 포함, 다음으로 시작 또는 같음과 같은 조건을 설정한 다음, 적용하려면 확인을 선택할 수 있습니다.

필터링된 노드는 레이블 뒤에 (filtered)가 표시됩니다. 필터를 제거하려면 노드를 마우스 오른쪽 단추로 클릭하고 필터 패널에서 [지우기] 를 선택합니다.

끌어서 놓기

서버 그룹 간에 서버 노드를 끌어 연결을 다시 구성할 수 있습니다. 또한 연결 트리에서 쿼리 편집기로 데이터베이스 개체(테이블, 뷰, 함수, 저장 프로시저)를 끌어서 스키마로 정규화된 이름을 텍스트로 삽입할 수도 있습니다.