I've used in the past all sorts of the database tools, Microsoft SSMS, Toad for Oracle (btw I think Toad for Oracle is the best database tool) , Toad for Sql server and others. All of them without exception prompt you for a connection, you connect and then you just execute sql scripts using that connection.
DataGrip is different. And I mean this not in a good way. It uses these sessions that I find super confusing.
All my sql code is in sql script files. On the left side I have the datasources trees. Let's say I have my dev database open. I work on a script and I want to compile it in dev. I can choose to run the file or I can select some text in the script and run it. If I choose the latter option DG keeps asking me what session I want to use. DG seems to open sessions attached to files I ran before, so I can run the code using a previous session or I can choose to create a new session.
Once again, I find this VERY CONFUSING.
I don't want to be negative, but every time I am like wtf?
Why is it like this? What is the reason for this design? Maybe I am missing something.
I've been a heavy user of Toad for SQL Server - Toad for SQL server has its own sore spots, but once you connect to a database, scripts opened are opened in the context of the current database. There is no confusion where everything runs and I can switch a script to a different connection.