2021-04-20 08:03:03

Co nowego w DataGrip 2021

DataGrip 2021 to pierwsza duża aktualizacja w tym roku i prawdopodobnie jedno z najbardziej godnych uwagi wydań w historii tej platformy. Twórcy oprogramowania mają nadzieję, że wersja 2021.1 poprawia przynajmniej jedną rzecz, która sprawiała Ci problemy. Może odkryjesz też nową funkcję, którą od razu pokochasz? Oto najważniejsze zmiany.

Interfejs nadawania uprawnień

Funkcja dostępna dla PostgreSQL, Redshift, Greenplum, MySQL, MariaDB, DB2, SQL Server oraz Sybase.

Dodano interfejs użytkownika dla edytowania uprawnień podczas modyfikowania obiektów.

Okienko Modify user, które możesz wywołać na wybranym użytkowniku w eksploratorze bazy danych kombinacją klawiszy Cmd/Ctrl+F6, zawiera teraz interfejs użytkownika dla przyznawania uprawnień obiektom:

Kontekstowe szablony skryptów

To rozwiązanie dla osób, które chcą generować proste zestawienia bezpośrednio z poziomu eksploratora bazy danych. Szablony obejmują wiele sytuacji, w których trzeba szybko napisać proste zapytanie. Wiemy również, że czasami, gdy jesteś w środowisku eksploratora bazy danych i skupiasz się już na konkretnym obiekcie, istnieje lepszy sposób na uzyskanie prostego zapytania wykorzystującego ten obiekt.

Wiele innych narzędzi również wykorzystuje ten mechanizm, by ograniczyć powtarzalne zadania, więc sporo użytkowników jest już do niego przyzwyczajonych.

Poniżej znajdziesz krótkie wideo prezentujące, jak to działa:

Każdy fragment kodu na tej liście jest w rzeczywistości żywym szablonem. Wszystkie mogą być jednak wygenerowane w kontekście zaznaczonego obiektu. Na przykład spójrzmy na szablon Select first N rows from a table.

Otwórz ustawienia funkcji Live Templates i zlokalizuj szablon, który potrzebujesz:

Select first N rows from a table wygląda jak ogólny szablon (i tak też może być używany). Ponieważ ta konkretna składnia nie może być używana we wszystkich bazach danych, dla szablonu ustawiane są odpowiednie dialekty. Główną różnicą, która sprawia, że szablon ten ma zastosowanie w eksploratorze baz danych, jest specjalne wyrażenie dbObjectName, które jest używane dla zmiennej $table$:

Możesz oczywiście dodać własne szablony lub edytować te już istniejące.

W sekcji Settings/Preferences | Database | General możesz wybrać, czy chcesz, by Twój skrypt był generowany do aktualnej, czy też nowej konsoli.

 

Edytor danych

Edytuj dane w MongoDB

Dodano kluczową funkcję do pracy z MongoDB: od tej wersji możesz edytować dane w kolekcjach MongoDB. Dostępny jest również podgląd zestawień.

Aby uczynić edycję bardziej elastyczną, wprowadzono możliwość zmiany typu pola z poziomu interfejsu użytkownika. Można to zrobić zarówno z menu kontekstowego pola, jak i w edytorze wartości:

Lepsze sortowanie

Usprawniono sortowanie danych:

  • nowe pole ORDER BY działa podobnie jak pole WHERE (które wcześniej nazywało się Filter)
  • Jeśli klikniesz na nazwę kolumny, której chcesz użyć do sortowania danych, sortowanie oparte na innych kolumnach zostanie usunięte. Jeśli wolisz używać sortowania stogowego, kliknij nazwę kolumny, trzymając wciśnięty klawisz Alt.

 

Jeśli chcesz użyć sortowania po stronie klienta (co oznacza, że DataGrip nie wykona ponownie zapytania, ale zamiast tego posortuje dane w obrębie bieżącej strony), odznacz opcję Sort via ORDER BY:

Możliwe jest również otwieranie tabel z predefiniowanym sortowaniem na podstawie głównego klucza numerycznego. Opcja ta jest dostępna z poziomu Settings/Preferences | Database | Data Views.

Nowy pasek narzędzi

Zmieniliśmy wygląd paska narzędzi w edytorze danych. Przyciski Roll-back i Commit nie są już wyświetlane w automatycznym trybie zarządzania transakcjami. Pojawiły się natomiast dwa nowe: Revert changes oraz Find.

Transponowanie wyników jednorzędowych

W ustawieniach: Settings/Preferences | Database | Data Views dostępna jest teraz opcja, aby zawsze transponować wynik, jeśli zawiera on jeden wiersz.

 

Nawigacja

Proste działania

Uproszczono nawigację i pozbyto się następujących ustawień:

Jeśli nigdy nie zmieniałeś tych ustawień i miałeś domyślnie zaznaczone pola wyboru, najważniejszą zmianą w 2021.1 jest dla Ciebie to, że przejście do deklaracji (Ctrl/Cmd+B) wywołane na obiekcie w SQL przenosi teraz użytkownika do DDL, a nie do drzewka bazy danych.

Dodano również skrót klawiszowy dla akcji Select in database tree. W systemie Windows i Linux jest to Alt+Shift+B, a w macOS Opt+Shift+B.

Głównym powodem tej zmiany jest uproszczenie logiki: każda akcja powinna prowadzić użytkownika do miejsca, którego oczekuje.

Jeśli teraz najedziesz kursorem na obiekt, to:

  • Ctrl/Cmd+B wyświetli Ci DLL
  • F4 wyświetli dane.
  • Alt/Opt+Shift+B podświetli obiekt w drzewku bazy danych.

 

Deweloperzy mają świadomość, że część tych zmian jest sprzeczna z wypracowanymi nawykami, dlatego umożliwili Ci częściowy powrót do poprzedniego schematu. Oto kilka wskazówek, jak tego dokonać:

 

  • Skorzystaj z atutów funkcji mapowania klawiszy. Jeśli lubisz używać Ctrl/Cmd+B do otwierania eksploratora bazy danych, po prostu przemapuj skrót do funkcji Select in database tree.
  • Jeśli lubisz, gdy Ctrl/Cmd+B lub Ctrl/Cmd+kliknięcie myszką aktywuje funkcję CREATE definition, gdy obiekt używany w SQL nie został jeszcze utworzony, po prostu nie usuwaj tych skrótów z Go to declaration po tym, jak wykonałeś poprzedni krok.
  • Jeśli miałeś odznaczoną opcję Prefer data editor over DDL editor i lubisz, jak dwuklik otwiera DLL, to zachowanie można przywrócić, zmieniając wartość klucza rejestru database.legacy.navigate.to.code.from.tree. Dane twórców wskazują jednak, że bardzo niewielu użytkowników korzystało z tego schematu. Rekomendują również używanie skrótów do otwierania DLL dla obiektów.

 

Poinformuj deweloperów, jeśli nowy schemat nie obejmuje swoim działaniem jakiegokolwiek scenariusza, z którego korzystałeś.

 

Łączność

Wsparcie dla Azure MFA

Dodano wsparcie dla interaktywnej autoryzacji Azure Active Directory. Kiedy jest włączona, przeglądarka otworzy się automatycznie i pozwoli Ci się zalogować.

Sterownik Redshift 2.x

Począwszy od tej wersji DataGrip, użytkownicy mogą korzystać ze sterownika Redshift 2.x JDBC. Głównym usprawnieniem jest tu możliwość anulowania zapytań.

Pełne wsparcie Google BigQuery

Wsparcie dla Google BigQuery zostało dodane w poprzednim wydaniu DataGrip. W tym rozszerzono je tak, że introspekcja bazy danych i generowanie kodu działają teraz poprawnie i nie są już zależne od funkcjonalności sterownika JDBC.

Wsparcie dla CockroachDB

Jeśli pracujesz ze skryptami CockroachDB lub tworzysz SQL do zapytania tej bazy danych, Twój kod zostanie poprawnie podświetlony, a wszystkie błędy zostaną wyświetlone przed uruchomieniem zapytania. Jest to pierwszy krok do pełnego wsparcia dla CockroachDB, które pojawi się w jednym z przyszłych wydań.

 

Usprawnienia w oknie połączeń

Przebudowano okno połączenia, by było bardziej przyjazne.

  • Sterowniki i źródła danych są teraz wyświetlane w dwóch różnych zakładkach. Lista sterowników nie powinna przeszkadzać bardziej doświadczonym użytkownikom, a jednocześnie będzie pomocna nowicjuszom. Dzięki niej nie pomylą ich ze źródłami danych.
  • Każda strona ze sterownikami ma teraz przycisk Create data source.
  • Przycisk Test Connection został przeniesiony do stopki, dzięki czemu możesz go użyć z każdej zakładki ustawień źródła danych, a nie tylko z zakładek General i SSH/SSL.
  • Ustawienia źródła danych DDL mają teraz listę rozwijaną, z której można wybrać dialekt.

 

Ponadto okienko URL jest teraz rozszerzalne, co ułatwia wprowadzanie długich adresów URL.

 

Eksplorator baz danych

Łatwe kopiowanie źródeł danych

Możliwość kopiowania źródeł danych pojawiła się w DataGrip dawno temu. Począwszy od 2021.1, możesz jednak kopiować, wycinać i wklejać źródła danych za pomocą dobrze znanej kombinacji klawiszy: Ctrl/Cmd+C/V/X.

  • Jeśli skopiujesz źródło danych, XML jest zapisywany w schowku. Możesz go w ten sposób udostępnić komuś w komunikatorze lub wkleić gdziekolwiek indziej.
  • Jeśli wytniesz i wkleisz źródło danych wewnątrz jednego projektu, zostanie ono przeniesione bez konieczności wpisywania hasła. Będzie ono jednak wymagane w każdym innym przypadku.
  • Wycinanie można cofnąć kombinacją klawiszy Ctrl/Cmd+Z.

 

Nowy układ

Domyślny układ eksploratora bazy danych został zmieniony, a mniej znaczące obiekty są teraz dostępne pod dedykowanym węzłem. Przez większość czasu ludzie pracują z tabelami, widokami i procedurami, podczas gdy widok użytkowników, role, przestrzenie tabel i wiele innych typów obiektów nie znajdują się wysoko na ich liście priorytetów. Dlatego te drugorzędne obiekty ukryte są teraz pod dwoma węzłami: Server Objects i Database Objects.

Jeśli chcesz przywrócić stary schemat, zaznacz Group Database and Schemas w ustawieniach, do których dostaniesz się przez kliknięcie w ikonkę koła zębatego.

Ukryj automatycznie generowane obiekty (Oracle)

Jeśli korzystasz z Oracle, możesz wyświetlać lub ukrywać w drzewku automatycznie generowane obiekty, włącznie z:

  • logami widoków zmaterializowanych
  • tabelami bazowymi dla widoków zmaterializowanych
  • tabelami pomocniczymi

 

Nowe typy obiektów (SQLite)

Dla SQLite pojawiły się nowe typy obiektów: funkcje, moduły i kolumny wirtualne.

 

Usprawnienia dla niewspieranych baz danych

Szablony źródeł danych

Począwszy od wydania 2021.1, użytkownicy mogą w łatwy sposób dodawać źródła danych z niewspieranych przez DataGrip baz danych. Udostępniono sterownik JDBC dla AWS Athena, Informix, Presto, SAP HANA, Google Cloud Spanner i wielu innych. Szukaj tych baz danych w sekcji Other na liście baz danych.

Poczyniono też dodatkowe usprawnienia:

  • Nie musisz już pobierać sterownika i własnoręcznie tworzyć źródła danych.
  • Nowe wersje sterowników będą zapewniane przez DataGrip.
  • Niektóre bazy danych mają teraz swoje dedykowane ikony.

 

Należy pamiętać, że wsparcie dla tych baz danych jest ograniczone i zależy głównie od możliwości sterownika JDBC i wsparcia dialektu SQL:2016 w edytorze SQL programu.

Parsowanie zapytań

Udostępniono nowe ustawienia dla osób korzystających z niewspieranych baz danych. Gdy pracujesz na nich w DataGrip, musisz wybrać jeden z dwóch dialektów: SQL:2016 lub Generic. Generic jest niemal identyczny jak SQL:2016, z jedną różnicą: DataGrip nie podświetli błędów, które znajdzie.

Aby zmodyfikować tę opcję, przejdź do: Settings/Preferences | Database | General | Split a script for execution in Generic and ANSI SQL dialects. Możesz tam zmienić następujące wartości:

  • On valid ANSI SQL statements or by separator – to domyślne ustawienie przydatne w większości przydatków.
  • On ANSI SQL Statements – dzielenie wyrażeń jak poprzednio. Logika oparta jest na tym, co DataGrip uważa za poprawne, bazując na składni SQL:2016.
  • By statement separator – wyodrębnianie i uruchamianie instrukcji według separatorów. Użyj tej opcji, jeśli pierwsza nie spełniła swojego zadania. Dla GenericSQL separatorem jest średnik. Pamiętaj, że nie można już ustawić własnego separatora.

 

Rozwiązano też część znanych problemów:

  • Wielu użytkowników informowało o problemie z uruchamianiem CTE. Problem ten został częściowo rozwiązany podczas aktualizacji gramatyki Generic z SQL:92 do SQL:2016. Opcja On valid ANSI SQL statements or by separator nadal jednak pomaga w przypadku bardziej złożonych CTE.
  • Opcja "On valid ANSI SQL statements or by separator" pomaga również w uruchamianiu rzeczy, które w gramatyce SQL:2016 w ogóle nie są instrukcjami, jak np. pokazywanie baz danych.

 

Wsparcie kodowania

Dwuznaczna kolumna podczas używania CTE

Inspekcja zgłaszająca dwuznaczne kolumny została usprawniona i uwzględnia teraz wszystkie kolumny znajdujące się wewnątrz standardowych wyrażeń tabelarycznych:

 

Wsparcie dla JSON Lines

Dzięki IntelliJ Platform, DataGrip obsługuje teraz format JSON Lines, który jest używany do pracy z danymi strukturalnymi i logami. IDE rozpozna teraz następujące typy plików: .jsonl, .jslines, .ldjson, oraz .ndjson.

 

Dostosowywanie czcionki

Nowe ustawienia pozwalają Ci dostosować styl używanej czcionki. W wersji 2021.1 możesz wybrać grubość standardowego i pogrubionego stylu czcionki, przechodząc do Settings/Preferences | Editor | Fonts.

 

Importowanie / Eksportowanie

Ostrzeżenie o niewczytaniu danych

W przypadku kopiowania danych binarnych, które nie zostały jeszcze w pełni załadowane, wyświetlane jest następujące powiadomienie:

Jeśli nie chcesz, aby dane były obcinane, zwiększ wartość w Settings/Preferences | Database | Data Views | Maximum number of bytes loaded per value.

 

Zapytanie w pliku Excel

Gdy eksportujesz dane do Excela, finalny plik będzie zawierać zapytania umieszczone w oddzielnym arkuszu.

Nowe funkcje w menu kontekstowym

Gdy importujesz plik CSV, opcja wskazania, że pierwszy wiersz jest nagłówkiem, jest teraz dostępna w menu kontekstowym:

 

Interfejs użytkownika

Dołącz folder metodą przeciągnij i upuść

Możliwe jest teraz dołączenie folderu do projektu poprzez jego przeciągnięcie i upuszczenie.

Maksymalizuj karty na podzielonym ekranie

Kiedy otwartych jest kilka zakładek przedzielających ekran w pionie, możesz je dwukrotnie kliknąć i zmaksymalizować okno edytora dla każdej z nich. Aby przywrócić okno do pierwotnego rozmiaru, wystarczy ponownie dwukrotnie je kliknąć.

Długie nazwy w tytułach zakładek

Jakiś czas temu wprowadzono skrócone nazwy zakładek. Nie wszystkim się to spodobało, więc dodano ustawienia dające większy wybór w tej kwestii.

Podziel się:
Opinie klientów zobacz: wszystkie opinie

Twoja opinia może być pierwsza.

Pokazuje 0-0 z 0 opinii
Uwaga!
* pola wymagane Dodaj opinię