DataGrip 2022.3이 출시되었습니다! 이번 주요 업데이트에서는 다양한 개선 사항을 제공합니다. 어떤 내용이 있는지 지금부터 살펴보겠습니다!
오랫동안 기다려온 Redis 지원이 구현되었습니다. 이제 Redis Single Instance 연결, 데이터 뷰어에서 키 값 탐색, 스마트 코딩 지원 기능을 활용한 Redis 쿼리 작성 및 실행 등이 가능합니다.
이 지원에 포함된 기능은 다음과 같습니다.
자세한 내용은 이 블로그 게시물을 참조하세요.
지난 5월 IntelliJ 기반 IDE의 새로운 UI를 지원하는 비공개 테스트 버전 프로그램을 발표했습니다. DataGrip도 예외는 아닙니다!
새로운 UI의 첫 단계에서는 일부 제한된 수의 사용자만을 대상으로 개선된 IDE 디자인을 선보이는 것을 목표로 했습니다. 테스트 버전 프로그램은 유용한 피드백을 수렴하여 처리하는 데 도움이 되었습니다. 이제 누구나 새로운 UI를 사용해볼 수 있습니다.
Settings/Preferences(설정/환경 설정) | Appearance & Behavior(모양 및 동작) | New UI Preview(새로운 UI 테스트 버전)에서 새로운 UI를 선택하여 직접 사용해 보시고, 새 UI에 대한 의견을 들려주세요.
DataGrip의 새 UI는 지속적으로 개선되고 있습니다. 예를 들어, Run Configuration(실행 구성)을 만드는 것은 다른 IDE에서는 매우 중요한 작업이지만, 밝은 파란색 버튼을 사용하는 것은 최우선 순위로 지정해야하는 작업은 아닐 수 있습니다. 상단 툴바를 사용자 지정하는 방법에 대한 아이디어가 있으면 공유해 주세요.
이번 릴리스에서 IDE 설정을 동기화하는 솔루션을 재작업 했습니다. 이 솔루션은 기본적으로 번들로 제공되는 플러그인을 통해 구현됩니다. 다음과 같이 설정에 새로운 Settings Sync(설정 동기화) 옵션이 표시됩니다.
이전에는 설정 동기화를 위해 IDE Settings Sync(IDE 설정 동기화) 및 Settings Repository(설정 저장소)라는 2개의 독립적인 플러그인이 사용되었습니다.
IDE Settings Sync(IDE 설정 동기화) 플러그인을 사용해 오셨다면 데이터가 새 플러그인으로 자동 마이그레이션되므로 별도의 조치가 필요하지 않습니다.
Settings Repository(설정 저장소) 플러그인을 사용하시는 경우 아직 마이그레이션이 진행 중이므로 현재 설정을 계속 사용하는 것이 좋습니다. 새 기능이 준비되면 IDE에 알림이 표시됩니다.
설정은 사용자의 JetBrains Account와 연결된 클라우드에 저장됩니다. 동일한 JetBrains Account와 연결된 다른 IntelliJ 기반 IDE를 사용하는 경우, 설정이 자동으로 동기화됩니다.
알려진 이슈: Settings(설정)의 Database(데이터베이스) 섹션은 현재 동기화되지 않습니다. 이 기능은 2022.3의 소규모 업데이트 중 하나에서 곧 제공될 예정입니다.
데이터 소스는 설정에 포함되지 않으므로 데이터 소스를 공유하려면 이 튜토리얼을 참조하세요.
새로운 가상 뷰 컨셉을 활용하면 데이터베이스에서 뷰를 실제로 생성하지 않아도 뷰를 사용할 수 있습니다. 기본적으로 결과를 검색하는 단순한 쿼리이며 DataGrip 내부에 저장됩니다.
가상 뷰는 데이터베이스 탐색기에 표시되며 더블 클릭하여 실행할 수 있습니다.
SQL 코드에서 가상 뷰를 사용하는 것은 현재 지원되지 않습니다.
이제 다이어그램 요소에 대한 탐색 기능이 완벽히 지원됩니다. 다음과 같은 모든 주요 탐색 액션을 수행할 수 있습니다.
오랫동안 기다려온 기능 중 하나가 출시되었습니다! 이제 빠른 검색 사용 시 객체를 필터링할 수 있습니다. 필터와 일치하지 않는 모든 객체는 표시되지 않습니다.
다양한 스키마를 사용 중인 경우 이 개선 사항이 매우 유용할 것입니다. 이제 정규 표현식 패턴을 기반으로 검사할 데이터베이스 또는 스키마를 선택할 수 있습니다. Add Pattern(패턴 추가)을 클릭하고 새 노드에서 정규 표현식 패턴을 정의하면 됩니다. 데이터베이스 또는 스키마는 해당 패턴에 따라 선택됩니다.
여러 패턴을 추가하면 다중성이 결합될 뿐 교차점은 생성되지 않습니다.
All(모두) 노드는 이전 버전과 다르게 작동하며, 디폴트 스키마를 자동으로 선택하지 않습니다. 이제 All schemas(모든 스키마), Default schema(기본 스키마) 또는 regexp 필터 적용 중에서 선택해야 합니다.
이제 전역 데이터 소스의 색상을 설정하면 해당 데이터 소스와 함께 해당 설정이 공유됩니다.
스키마에 대한 스크립트를 실행하려면 Files(파일) 도구 창에서 스크립트 파일을 드래그 앤 드롭하면 됩니다.
이제 날짜 및 시간 유형의 필드가 데이터 에디터에 표시되는 방식을 사용자 지정할 수 있습니다. 설정은 Database(데이터베이스) | Data Editor and Viewer(데이터 에디터 및 뷰어)에서 확인하세요.
다음과 같이 3가지 유형의 필드를 사용할 수 있습니다.
Datetime/timestamp(날짜 및 시간/타임스탬프)(시간대 포함/불포함), Time(시간)(시간대 포함/불포함) 및 Date(날짜).
WHERE
절 선택한 값 범위를 WHERE
절의 일부로 추출할 수 있습니다.
OR
연산자로 결합됩니다. AND
연산자로 결합됩니다. IN
연산자로 결합됩니다. Filter by(필터링 기준) 액션은 이제 여러 값을 선택하는 경우 조건을 생성합니다.
텍스트 검색 시 Ctrl/Cmd+F를 누르면 커서 아래의 값이 검색 필드에 자동으로 채워집니다. 이 기능은 잘 알려진 텍스트 에디터 로직과 유사합니다.
이제 구조체 값의 표시 방식이 가독성 높게 개선되어, 각각의 중첩된 값이 별도의 열로 표시됩니다.
이제 IDE의 제안을 적용하면 쿼리가 어떻게 변경되는지 즉시 확인할 수 있습니다. 사용 가능한 인텐션 액션 목록을 열고 옵션에 마우스를 올리면 미리보기가 표시됩니다.
인텐션 액션 목록이 열린 상태에서 F1/Ctrl+Q를 눌러 미리보기 기능을 비활성화할 수 있습니다.
선택된 항목이 없는 경우 Ctrl/Cmd+C를 누르면 텍스트 에디터에서 전체 줄이 자동으로 선택 및 복사됩니다. 이 기능은 이전에도 동일한 방식으로 작동했으나, 한층 개선되어 줄을 더 간편하게 붙여넣을 수 있습니다. 다음 동영상에서와 같이, 선택된 항목이 없는 경우 복사한 줄은 캐리지 리턴이 표시된 새 줄에 붙여넣기 됩니다.
Per Object By Schema and Type(스키마 및 타입별 객체에 따라)이라는 새로운 레이아웃이 있습니다. 전체 스키마에 대한 SQL을 생성하는 데 이 레이아웃이 사용될 경우 결과 파일은 객체 타입(테이블, 뷰 등)에 따라 폴더에 배치됩니다.
얼마 전 가상 외래 키 생성 기능이 도입되었습니다. 이 기능은 주로 다음과 같은 용도로 사용됩니다.
JOIN
절 코드 완성. 가상 외래 키 생성 시 쿼리의 JOIN
절에서 Store Relation(관계 저장) 인텐션 액션이 주로 사용되었습니다. 이 액션은 쉽게 찾을 수 없었으며, 전체 기능을 직관적으로 사용할 방법도 없었습니다. 이제 다음과 같이 변경되었습니다.
가상 외래 키가 데이터베이스 탐색기에 표시됩니다.
데이터베이스 탐색기 및 Modify Table(테이블 수정) 대화상자에서 이 키를 생성하거나 삭제할 수 있습니다.
이제 MySQL 및 PostgreSQL 빠른 문서 팝업에 테이블 크기가 표시됩니다. 이를 확인하려면 Show table preview(테이블 미리보기 표시)를 클릭하세요.
이제 세션 템플릿의 시작 스크립트를 설정할 수 있습니다. 즉, 해당 템플릿을 기반으로 새로운 세션이 생성될 때마다 스크립트가 실행됩니다. 예를 들어, Snowflake 내부 검사를 위해 DataGrip에서 use secondary roles all
구문이 실행될 수 있습니다.
MongoDB 연결 대화상자에 다양한 인증 메커니즘이 추가되었습니다. 사용하려면 드라이버를 버전 1.16으로 업데이트하세요.
스키마 Diff 뷰어에서 종속 객체가 고려됩니다. 종속 객체 중 가장 중요한 객체는 PostgreSQL IDENTITY 열입니다. 두 개의 동일한 IDENTITY 열의 관련 시퀀스가 다른 경우, 두 열을 비교할 때 차이점이 표시됩니다.
또 다른 예시는 다른 스키마에서 프로시저를 호출하는 트리거입니다. 루틴 이름이 다른 경우 트리거 간 차이점이 표시됩니다.