Issues that makes DataGrip an odd tool I can't recommend as a database development tool.
Hi Team,
Issues that makes DataGrip an odd tool I can't recommend for daily use as database development tool.
IF you know that I missed some option or setting that could help to resolve any of the below issues - please let me know. IF I do something in a wrong way, please let me know the right way please.
1. There's no value alignment in result set dependent on column data type. This is a basic way a database tool should work with result set. Without it the tool is useless IF you work a lot with data. https://youtrack.jetbrains.com/issue/DBE-2701 (Created on May, 2016)
2. There's no way to simplify database connection management in case you have more than a few connections. Have you ever worked with Oracle database? Each user/schema has it's own password, a database may have a lot of different users/schemes in scope of the same application. Plus DEV, QAT, UAT, PROD environments. And we have more than 20-50 connections in scope of the same project. It's a madness. A simple grouping could make things looks better. Should I create a separate project for each environment looking on the same repository folder? probably this will be more ridiculous.
3. DataGrip has issue with autocomplete. For Oracle source code:
- DataGrip knows nothing about, as an example, ALL_SOURCE view even IF I set on all schemas in Options tab of connection properties.
- IF I have two connections to the same schema on different database environments (DEV, and QAT) - autocomplete will suggest BOTH (!) tables.
- In case of a bit complex SQL query with WITH clause - DataGrip fails to parse it.
- Actually, a lot of 'Unable to resolve ...' issues with Oracle source code. Sometimes it looks like 70% of the package is unresolved. As an example, a constant from package specification is not recognized in another package body (sic!).
- DataGrip does not know about COLUMN_VALUE field of Oracle object type, as an example, AS TABLE OF NUMBER...
4. DataGrip logic of source code execution on a database is sick with f# dualism. If we are going to execute a SQL file from Files tab - we will be asked about what database we should use. Ok - it's normal and acceptable. But when we are going to run a selected SQL query within an open file - DataGrip will silently execute the SQL query on a database associated with the file previously! Yes, it will be asked only first time you run the file, and ... I'm still not sure what will be selected as a target database...
5. For PostgreSQL database I have seen issues with metadata collection. I create a foreign key. IDE uploaded incrementally the foreign key. A few actions by creating additional foreign keys - and first one is gone. Even complete metadata uploading does not help.
6. DataGrip does not know about Oracle CHAR keyword for type definitions https://youtrack.jetbrains.com/issue/DBE-2634
7. Source code style for SQL is very simple... As an example, no chance for below style. Though it's not a mission critical issue as point #1 above.
select a.column_a a
,a.column_second b
from table_sample a
join table_test b on b.id = a.id
where a.column_c = 12
and a.column_d = 'test';
At the moment DataGrip is a tool I can't trust in full.
- I should check each field data type via system views (just in case, because I don't know is it number or a text). It's great if your database has 20 tables, but if it has more? or you see the database first time and is not familiar with it?
- I should check actual objects (foreign key, constraints, etc.) related to a table manually. No guarantee metadata collected without a mistake.
- Autocomplete doesn't work as expected and a high noise of unresolved objects in source code. Sublime or Notepad have an advantage - no useless noise warnings.
Best regards,
Kostyantyn
Please sign in to leave a comment.
I was billed 70$ / y for DG once I found that thread about DBeaver. That has changed my life.
1/ DG is slow as hell. As a database administrator, I'm updating frequently the schema (index, tables, etc.) and that implies infinites introspections of the databases. As a result, I have to wait wayyyyy to long to be able to check the objects in the folder tree.
2/ I'm frequently working with Oracle and it is clearly badly supported by DG. Randomly, objects are not visible in the tree. A database with 400 tables will be displayed with only 270 tables.
3/ The way the connection are organized is a mess. I work for multiples customers with different database technologies. The "project" organisation is not user friendly and I am frequently scrolling connections in order to find the one I want to use.
4/ “Files” tab is just unusable for me. Too many consoles “console 1”, “console 2”, … I'm supposed to retrieve the console I've used 5 days ago and I have to remember the console number, are you kidding me ?
Sorry JetBrains but I've tried and even for free, I'll not use your product anymore.
2. If there are objects missing in the database tree, please try the following steps
https://www.jetbrains.com/help/datagrip/cannot-find-a-database-object-in-the-database-tree-view.html
If the solutions don't have any effect, you need to provide the logs suggested in step 6 for further investigation
3. There's a way to customize the database explorer view using folders.
4. We're planning to rethink the concept of query consoles and might likely introduce some new entity.
Thomas D ,
We'll try to help you. Could you invoke Diagnostic Refresh action and attach produce logs?