Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Eclipse UI problems with functionality for Data Source Explorer #20

Open
andersonmwa opened this issue Mar 27, 2024 · 1 comment
Open

Comments

@andersonmwa
Copy link

I ran into several serious usability problems trying to create a new connection with the Microsoft SQL Server JDBC driver using the Eclipse Data Source Explorer UI.

  1. Not that it mattered in the end, but the list of Microsoft SQL Server versions are very old/outdated. SQL 2008 through 2016 when selecting a SQL Server provided template/profile for a new connection. This doesn't reflect 2017, 2019, or 2022 versions.

  2. On the "New Connection Profile" dialog, the bottom Connection URL generated from filling in the form does not include user name and password (I used SQL Server authentication) even though it uses them for the connection if the text box properties are set. Other text box properties do show in the generated Connection URL (such as database, host, and port). The connection URL shown on this dialog is not the same as what is generated/shown if you edit the connection (small triangle icon at top right of form). That one takes you to the "Edit Driver Definition" dialog. There, if you look at properties, I can manually add the username=;password= values to that Connection URL property (first one in the list) as that Connection URL is editable (whereas the one on the "New Connection Profile" isn't editable. It showed Password and User ID as the last two properties, but those don't update the Connection URL property either...even though both dialogs actually use those values.

  3. The biggest problem in connecting to SQL Server (I was connecting to SQL Server 2019) is the fact that I need to set other properties that these dialogs don't clearly allow for. For instance, I had to set encrypt=false (or if I were to use encrypt=true, I'd need to set trustServerCertificate=true) and there was no way to do that directly. The hack I had to stumble on was to be on the "New Connection Profile" dialog and add these key/value pairs in the Database text box after the database name (separated with semi-colons).

  4. I found out that if you are on the "Edit Driver Definition" dialog on the Properties tab, if you edit the Connection URL text box to try and add keys you need (such as encrypt=false in my case), if you make the second key different from Database=, then once you go back to the "New Connection Profile" dialog, that different second key is shown in the Database text box. So it would look like the Database name was encrypt=false. It was a valid connection string, I just moved the position of the Database= key to not be the second key...So this is pretty bad that it is relying on the position of keys to update other dialogs.

In the end, the only way I was able to get this to test connect/succeed, was to set the "New Connection Profile" dialog Database text box to show (in this order):

Database: ;encrypt=false
Host:
Port:
User name:
Password:

The important part is if anyone needs to add keys, the only place you can even do that for it to work is after the database name (which further to my point is that when you specify the database name, you don't add the key name which is inconsistent with how I successfully added the encrypt key/value).

If the more current versions of SQL Server need connection strings (like I did) where you must specify encrypt=false (or encrypt=true;trustServerCertificate=true), it is completely non-intuitive how to do it. Who is going to know to to to the "New Connection Profile" dialog, Database text box, and know they need to add these keys after the database name (where you give the database name without the "Database=" part)?

@merks
Copy link
Contributor

merks commented Mar 27, 2024

These all sound like significant barriers to entry.

Just to level set expectations, look at the commit history of the project:

https://github.com/eclipse-datatools/datatools/commits/master/

You'll see it's primarily just me over the past 2 years and all I'm doing is the release engineering work to ensure that builds that work with the latest dependencies are available.

The one exception is

8402081

which is a contribution.

I can help you make a contribution and I can help produce a build with that contribution. But I don't think you should expect anyone else will address your issue.

I've tried to make it as easy as humanly possible for anyone to be able to contribute:

https://github.com/eclipse-datatools/.github/blob/main/CONTRIBUTING.md#2-create-an-eclipse-development-environment

@merks merks transferred this issue from eclipse-datatools/.github Apr 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants