DataGrip 2020.3의 새로운 기능

MongoDB용 SQL

이제 SQL을 사용하여 MongoDB 데이터베이스를 쿼리할 수 있습니다! 이 기능을 실현하기 위해 JetBrains는 자체 JS-SQL 변환기를 만들었습니다.

SELECT 쿼리만 작동하며 작업 구문은 JOIN, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT, OFFSET입니다. 지원 항목에 관한 전체 글은 여기에서 확인하세요.

Mongo에서 각 SQL 쿼리의 컨텍스트 메뉴에는 Copy JS script to clipboard(JS 스크립트를 클립보드에 복사)Show JS Script(JS 스크립트 표시)라는 두 가지 옵션이 있습니다. JS Script Preview(JS 스크립트 미리보기) 창에서는 쿼리를 편집하고 실행할 수 있습니다.

연결성

Couchbase 지원

Couchbase 지원

새로운 데이터베이스가 JetBrains 가족으로 합류하는 것은 언제나 기쁜 일입니다. 새로운 멤버, Couchbase를 소개합니다! 단, DataGrip은 Couchbase Analytics 서비스가 아닌 Couchbase Query 서비스를 지원하니 유념해주세요.

Azure AD 인증

Azure AD 인증

DataGrip 커뮤니티에서 한동안 계속 요청했던 기능입니다! 이제 Azure AD를 사용하여 데이터베이스에 로그인할 수 있습니다.

작업 디렉터리

작업 디렉터리

이제 데이터 소스 작업을 처리하는 프로세스용으로 작업 디렉터리를 지정할 수 있습니다. 또한 모든 상대 경로는 이 디렉터리(예: 드라이버 프로퍼티)에서 확인됩니다.

데이터 에디터

셀 값을 별도의 에디터에서 작업

2020.2에서 처음 도입한 셀 값 에디터를 개선했습니다.

서식 지정된 값

서식 지정된 값

이제 값이 한 줄로 저장되어 있어도 서식 지정된 값을 표시할 수 있습니다. 또한 서식 지정된 뷰에서 값을 편집하고 원래 서식으로 업데이트할 수 있습니다. 이 기능은 한 줄 XML 및 JSON에서 작동합니다.

하단 위치

하단 위치

화면 너비가 흐름에 중요한 경우 셀 값 에디터를 데이터 에디터의 하단으로 이동할 수 있습니다.

이미지

이미지

또한 이제 이 패널에 이미지도 표시됩니다!

전치된 테이블 열기

전치된 테이블 열기

기본적으로 전치된 뷰에서 테이블과 뷰를 열 수 있는 기능이 추가되었습니다. 이 기능은 데이터베이스의 평균적 테이블에 대규모 열이 있는 경우 유용할 수 있습니다.

선택 항목 접기

선택 항목 접기

선택 항목 펼치기 액션은 테이블에서 사용할 수 있게 된 지 한참 되었습니다. Windows 및 Linux에서 Ctrl+W를 사용하고 macOS에서 Opt+Up을 사용하면 이 액션을 호출할 수 있습니다. 이제 반대 액션인 선택 항목 접기를 추가했습니다. Windows 및 Linux의 단축키는 Ctrl+Shift+W이고 macOS는 Opt+Down입니다.

가져오기/내보내기

새로운 추출기

새로운 추출기

새로운 두 가지 추출기인 One-rowSQL-Insert-Multirow를 소개합니다!

One-Row를 사용하면 쉼표로 구분된 문자열로 열을 복사할 수 있습니다. 이렇게 하면 IN 절에 값 집합을 붙여넣을 때 매우 유용합니다!

SQL-Insert-Multirow는 삽입될 여러 개의 새 줄이 있는 단일 INSERT 문을 생성합니다.

값을 따옴표로 묶지 않음

값을 따옴표로 묶지 않음

CSV 서식 구성에 never quote values(따옴표로 묶지 않음)라는 새로운 옵션이 추가되었습니다.

내부 검사

내부 검사 진단 정보 수집

내부 검사 진단 정보 수집

내부 검사는 DataGrip이 데이터베이스의 정보를 검색하는 프로세스입니다. 이 정보는 데이터베이스 탐색기에서 객체를 표시하고, 해당 DDL을 표시하고, 코드 완성 제안을 제공하는 등의 작업에 사용됩니다.

때때로 내부 검사에 문제가 생길 때가 있습니다. 이제 문제가 발생하면 지원팀에 전달하거나 이슈 트래커의 티켓에 포함할 수 있는 유용한 데이터를 수집해 주세요. 그러면 가능한 최상의 도움을 받을 수 있습니다.

Diagnostic refresh(진단 새로고침)은 데이터베이스를 새로 고치고 모든 쿼리를 탐색기/Finder에 표시될 하나의 단일 파일에 수집합니다. 원하는 경우 이 파일을 직접 검사할 수도 있지만, 검사가 너무 느릴 경우 이 파일을 JetBrains에 전송할 수 있도록 하는 것이 이 기능의 주된 목적입니다.

Prepare introspector diagnostic(검사기 진단 준비)은 내부 검사가 잘못 작동하는 경우, 즉 오래된 항목이 표시되거나 새 객체가 표시되지 않는 경우 JetBrains에 보내야 하는 3개의 파일을 생성하고 해당 폴더를 표시합니다.

권한 부여

권한 부여

이제 DataGrip은 객체 권한 부여를 인지하고 객체의 DDL에 표시합니다.

데이터베이스 트리 내 변경 내용

데이터베이스 트리 내 변경 내용

일부 객체의 DDL을 변경했지만 아직 제출하지 않은 경우 제출 대기 중인 객체가 데이터베이스 트리에서 강조 표시됩니다. 이전에는 Database Changes(데이터베이스 변경 내용) 도구 창에서만 이를 확인할 수 있었습니다.

테이블 프로퍼티 추가

테이블 프로퍼티 추가 PostgreSQL

이제 DataGrip은 TABLESPACEINDEX ACCESS METHOD를 사용하여 DDL을 생성합니다.

새로운 객체

새로운 객체 Greenplum

이제 DataGrip은 데이터베이스 트리에 더 많은 객체를 표시합니다. 새 객체는 collation(데이터 정렬), materialized view(구체화된 뷰), foreign table(외부 테이블), foreign data wrapper(외부 데이터 래퍼), foreign server(외부 서버), user mapping(사용자 매핑)입니다.

오버로드된 프로시저를 올바르게 표시

오버로드된 프로시저를 올바르게 표시 Oracle

이전에 한 패키지 내 오버로드된 프로시저는 하나의 항목으로 표시되곤 했습니다. 하지만 이제 그럴 필요가 없습니다. 대괄호 안의 숫자는 데이터베이스 내 프로시저의 기본 색인이 됩니다.

코딩 지원

Generic 파생 언어용 서식 지정 도구

Generic 파생 언어용 서식 지정 도구

지원되지 않는 데이터베이스로 작업할 때 JetBrains의 SQL 서식 지정 도구를 활용해 보세요!

옵션 이름 변경

옵션 이름 변경

Inline renaming(인라인 이름 변경)은 이제 주석, 문자열 또는 텍스트 사용 위치를 처리할 수 있는 옵션을 제공합니다.

오타 수정

오타 수정

Windows 및 Linux의 경우 Alt+Enter, macOS의 경우 Opt+Enter를 누르면 하위 메뉴를 열지 않고도 오타를 수정할 수 있는 옵션이 제공됩니다.

충돌 호출 검사

충돌하는 호출 검사 Oracle

Oracle에 새로운 검사를 도입했습니다. 오버로드된 함수를 사용할 때 호출 충돌이 발생할 경우 DataGrip이 이에 대해 경고합니다.

대소문자 구분을 위한 새로운 서식 지정 도구 옵션

대소문자 구분을 위한 새로운 서식 지정 도구 옵션

이제 기본 제공 유형, 사용자 지정 유형(단순한 유형 대신) 및 함수에 대해 별도의 대소문자 구분 설정을 정의할 수 있습니다.

쿼리 실행

실행 구성

스크립트 실행에 도움이 되는 새로운 사용편의성 기능을 도입했습니다.

스키마 전환

스키마 전환

스크립트에 스키마 전환이 포함된 경우 DataGrip에서 경고합니다.

디폴트 스키마 표시

디폴트 스키마 표시

데이터 소스만 대상으로 선택한 경우 DataGrip에서 스크립트가 실행될 특정 스키마를 표시합니다.

기록 대상

기록 대상

또한 기록에서 대상을 선택할 수 있도록 만들었습니다. 작은 시계 버튼을 클릭하기만 하세요.

별도의 탭에 콘솔 출력

별도의 탭에 콘솔 출력

Services(서비스) 패널이 생기기 전 좋았던 시절을 그리워하는 사용자와 전체 화면 너비를 사용하고 싶어 하는 사용자를 위해 Open new services tab for sessions(세션용 새 서비스 탭 열기) 옵션을 Settings(설정)/Preferences(환경 설정) | Database(데이터베이스) | General(일반)에 도입했습니다. 이 기능이 켜져 있으면 새 데이터베이스 세션마다 별도의 탭이 생성되므로 Services 트리가 표시되지 않고 그리드 또는 출력만 보입니다!

탭 이름

탭 이름 SQL Server

결과 탭의 이름을 지정하는 기능은 많은 사용자가 선호하는 기능이지만 이전에는 여러 구문을 한 번에 실행한 경우 SQL Server에서 작동하지 않았습니다. 이제 이 문제가 해결되어, 결과 탭의 이름을 자유롭게 지정할 수 있습니다.

'Explain plan' 내 색인에 대한 힌트

'Explain plan' 내 색인에 대한 힌트 SQL Server

색인이 쿼리 성능에 도움이 될 수 있다고 데이터베이스에서 판단하는 경우, DataGrip은 Explain plan(계획 설명) 도구 창에서 색인 생성을 제안합니다.

DDL 편집

오래된 테이블 구조 경고

오래된 테이블 구조 경고

뷰, 루틴 또는 함수를 열어 편집하려고 할 때 실제로 데이터베이스에서 객체가 변경되었고 오래된 버전을 편집하게 되는 경우, DataGrip에서 이에 대해 경고합니다.

2020.3부터는 테이블에서도 동일하게 작동합니다!

객체가 삭제된 경우 경고

객체가 삭제된 경우 경고

모든 상황을 명확히 파악할 수 있게 도와주는 또 다른 개선 사항이 있습니다. 객체가 완전히 삭제되었을 때 사용자는 이에 관한 전용 경고를 받게 됩니다.

루틴 inventory_in_stock의 DDL을 열고 일부 변경한 바로 그 순간, 누가 그 내용을 삭제했다고 상상해 보세요!

DataGrip은 다음 세 가지 옵션을 제공합니다.

  • Revert local changes(로컬 변경 내용 되돌리기): 이 옵션은 프로시저를 더 이상 편집하지 않고 삭제되었다는 사실에 동의할 때 사용합니다. DDL 에디터가 닫힙니다.
  • Keep local changes(로컬 변경 내용 유지): 이 옵션은 프로시저를 계속 편집하려는 경우 사용합니다. 사실 Submit(제출)을 누르면 프로시저가 다시 생성됩니다. 이 경우, 서버 버전을 더 이상 사용할 수 없기 때문에 변경 내용이 더 이상 강조 표시되지 않습니다.
  • Restore in the database(데이터베이스에서 복원): 이 옵션은 마지막으로 새로고침된 순간 캐시된 버전을 기반으로 프로시저를 복원하려는 경우 사용합니다. 이제 서버 버전을 다시 사용할 수 있으므로 변경 내용이 계속 강조 표시됩니다.
마이그레이션 액션을 모든 곳에서 사용

마이그레이션 액션을 모든 곳에서 사용

Submit(제출), Rollback(롤백), Show Changes(변경 내용 표시) 액션을 이제 객체 컨텍스트의 모든 곳에서 사용할 수 있습니다. 이 액션은 객체의 컨텍스트 메뉴에도 있습니다. 예를 들어 여러 루틴을 롤백하고 로컬 변경 내용을 취소하려면, 데이터베이스 탐색기에서 해당 루틴을 선택하고 Database Tools(데이터베이스 도구) 메뉴 섹션에서 Rollback 액션을 사용하기만 하면 됩니다.

일반

탭을 드래그 앤 드롭

탭을 드래그 앤 드롭

이제 탭을 드래그 앤 드롭하여 에디터를 가로 또는 세로로 분할할 수 있습니다. 분할 모드에서 탭에 결과를 고정하려면 각 결과에 In-Editor Results(에디터 내 결과)를 사용하세요.

시작 화면

시작 화면

다른 JetBrains IDE와 달리 DataGrip에는 시작 화면이 없었습니다. DataGrip 2020.3을 열면 마지막으로 열었던(또는 디폴트) 프로젝트로 바로 이동합니다. 그러나 프로젝트를 모두 닫았던 경우에는, 시작 화면이 나타납니다. 여기에서 모든 프로젝트에 액세스하고 플러그인을 관리하고 IDE를 사용자 지정할 수 있습니다.

프로젝트별 플러그인

프로젝트별 플러그인

Settings(설정) | Plugins(플러그인)에 현재 프로젝트의 플러그인만 활성화 또는 비활성화할 수 있는 옵션이 생겼습니다. 해당 플러그인이 필요한 첫 번째 프로젝트가 열리면 플러그인이 자동으로 로드되고 마지막 프로젝트가 닫히면 자동으로 언로드됩니다.

현재 테마를 OS 설정과 동기화

현재 테마를 OS 설정과 동기화

Settings(설정)/Preferences(환경 설정) | Appearance & Behavior(모양 및 동작) | Appearance(모양) | Theme(테마)에서 Sync with OS(OS와 동기화)를 선택하면, OS UI가 밝은색 또는 어두운색 테마로 변경될 때 IDE의 테마도 동일하게 자동으로 전환됩니다.

macOS 단축키를 단어로

macOS 단축키를 단어로

macOS 단축키를 읽는 데 어려움이 있다면 레지스트리에서 ide.macos.disable.native.shortcut.symbols 키를 전환해 보세요. 레지스트리는 Find Action(액션 검색)(Cmd+Shift+A)을 사용해 'Registry'를 입력하면 호출할 수 있습니다.

미리보기 탭

미리보기 탭

이제 클릭 한 번으로 미리보기 탭에서 파일을 열 수 있습니다. 이 기능을 활성화하려면 Files(파일) 도구 창 뷰에서 톱니바퀴 아이콘을 클릭하고 Enable Preview Tab(미리보기 탭 활성화)을 선택하세요. 이렇게 해서 열린 파일을 편집하기 시작하면 미리보기가 중단되고 일반 파일로 바뀝니다.

간단한 계산기

간단한 계산기

이제 Search Everywhere(전체 검색) 대화상자의 검색창에 간단한 수학 공식을 입력하고 계산 결과를 즉시 확인할 수 있습니다.

파일 연결

파일 연결

2020.3부터 DataGrip을 지정된 유형의 파일을 열기 위한 디폴트 애플리케이션으로 설정할 수 있습니다. Settings(설정)/Preferences(환경 설정) | Settings(설정) | Editor(에디터) | File Types(파일 형식)으로 이동해 Associate file types with DataGrip(파일 형식을 DataGrip과 연결) 버튼을 클릭하세요.

이 기능은 데이터베이스 관련 파일에서만 작동하는 것이 아닙니다! DataGrip은 JSON, HTML, MarkDown* 파일에서도 사용할 수 있는 훌륭한 에디터입니다!

*플러그인 사용

모두 펼치기

모두 펼치기

Collapse All(모두 접기)Database(데이터베이스)Files(파일) 도구 창에서 Expand All(모두 펼치기) 버튼과 함께 제공됩니다. Project(프로젝트) 뷰에서 선택하거나 macOS에서 Cmd+더하기(+) 기호, Windows 또는 Linux에서 Ctrl+Numpad+더하기(+) 기호를 누르세요.

중요한 수정 사항

  • 빠른 검색을 호출하면 Copy(복사) 액션이 빠른 검색 텍스트가 아닌 나열된 항목 텍스트를 복사합니다. IDEA-238064
  • MongoDB의 Test Connection(연결 테스트) 문제를 수정했습니다. 이전에는 연결이 설정되지 않은 경우에도 항상 성공으로 표시되었습니다.
  • MySQL BLOB 필드를 다시 편집할 수 있게 되었습니다. DBE-11311
  • Limit page size setting(페이지 크기 제한 설정)이 변경되면 데이터 에디터에서 사용자 지정 페이지 크기가 재설정됩니다. DBE-11510
  • MySQL 스크립트 내 USE 문이 첫 번째 쿼리 이후에 재설정되지 않습니다. DBE-9145