sun.jdbc.odbc.JdbcOdbcDriver not working with jdk 1.8 - java-8

I downloaded jdk8u40 and now I get:
SQLException:
SQLState: 08001
Message: No suitable driver found for jdbc:odbc:mysqlDB
Vendor: 0
where mysqlDB is my data source name.
I use:
jdbc.drivers=sun.jdbc.odbc.JdbcOdbcDriver
jdbc.url=jdbc:odbc:mysqlDB
as connection strings. I have downloaded and installed driver:
mysql-connector-odbc-5.3.4-winx64.msi
I read in your forums that the jdbc-odbc bridge is no longer supported in jdk 1.8.
Any help appreciated.

The JDBC-ODBC bridge is no longer shipped/supported with JDK 8, hence the errors:
The JDBC-ODBC Bridge should be considered a transitional solution; it will be removed in JDK 8. In addition, Oracle does not support the JDBC-ODBC Bridge. Oracle recommends that you use JDBC drivers provided by the vendor of your database instead of the JDBC-ODBC Bridge.
If you're using Java, it would be better to use a JDBC driver instead of an ODBC driver, see here http://dev.mysql.com/downloads/connector/j/ for the MySQL JDBC driver.

In regards to the comment "I read in your forums that the jdbc-odbc bridge is no longer supported in jdk 1.8. Any help appreciated."
Please note that can obtain JDBC-ODBC Type 1 Bridge Drivers from third parties. For example, OpenLink Software continues to provide an JDBC-ODBC Bridge Driver for past and current Java Virtual Machine editions:
Single-Tier JDBC-ODBC Bridge Driver
Single-Tier ODBC-JDBC Bridge Driver

Related

JDBC Connection between Tableau and Apache Druid

I have been trying to connect to Druid from Tableau using a JDBC Driver.
I have successfully connected using an ODBC Driver as per my answer to this post Connecting Tableau to Apache Druid
However, I want to be able to use a JDBC driver as well.
Though I have followed the steps in this post: https://support.imply.io/hc/en-us/articles/360025589574-Connecting-Tableau-to-Druid-with-JDBC,
I keep getting the error: "No suitable Driver installed or the URL is incorrect".
As per the article, I have ensured that the avatica driver is downloaded and installed in ~/Library/Tableau/Drivers, as I am on a mac.
I am also sure I am giving the right URL to my broker which I am otherwise able to access on a browser at port 8082.
Any pointers what might be wrong?
the issue may be that you don't have the avatica driver in your classpath. please see https://calcite.apache.org/docs/adapter.html
I found from this article: https://kb.tableau.com/articles/issue/locating-library-jdbc-directory-in-mac-to-install-the-athena-drivers-for-tableau-prep
that Tableau actually looks for the JDBC driver in the ~/Library/JDBC folder on mac (and it does not seem to read from ~/Library/Tableau/Drivers folder as mentioned in the original article in my question). Once I placed the avatica driver in this folder, Tableau desktop was able to find the driver.

Cognos 10.2.2 as400 iSeries DB2 jdbc connection

I attempted to set up the jdbc connection to as400 iSeries DB2 for Dynamic Cube features...
However the creation connection doesn't work out and returning error message :
XQE-DS-0020 "DB2 UDB for AS/400" server version "6.1" is not supported
I have placed in the jt400-6.4.jar in both
1.\webapps\p2pd\WEB-INF\lib
2.\v5dataserver\lib
and restarted my server..
still no luck..
With 10.2.2 the version supported is 7.1 and 7.2.
Check this specs.
To use JT400 driver you must be using IBM Cognos 10.2.1 FP3 or higher. DB2 version must be 7.1 or above and that is why the connection is rejected and states that it is because the version is not supported by the Dynamic Query engine.
http://www-01.ibm.com/support/docview.wss?uid=swg27037784
http://www-01.ibm.com/support/docview.wss?uid=swg27042164

Connecting to DB2 (DB2/400) database running on an iSeries AS400 via Linux/OSX

My requirement is simple: I have a Rails web app that needs to read some data in from DB2 running on an iSeries AS400.
With the incredible help of the ibm_db gem maintainers, I believe I've been able to solve the technical hurdle of connecting to the DB2 instance.
The backstory is here if there are others looking for guidance:
https://github.com/ibmdb/ruby-ibmdb/issues/25
Briefly:
Download the DB2 CLI/ODBC package provided for Linux/OSX
Set some environment variable and some connection config
Attempt a connection.
Leverage sequel gem in conjunction with ibm_db gem.
It should work!!
Sadly, I'm now blocked on #3 by this error:
[FAILED]: [IBM][CLI Driver] SQL1598N An attempt to connect to the database server failed because of a licensing problem. SQLSTATE=42968
I've been in touch with 3 different people at IBM in an attempt to resolve this and I'm constantly pointed to an article about DB2 Connect licenses with a cost of over $10K. iSeriesAccess (formerly ClientAccess) is available for Windows/Linux but is a heavy package and doesn't have an OSX counterpart.
I did find this question (License ERROR with DB2 driver on linux) but this I believe this assumes DB2 on Linux, not OS400.
Has anybody in the SO community had any luck or experience with this sort of thing?
For ODBC connections to an IBM i database, there are two options:
Use DB2 Connect Unlimited Edition for System i (extra cost)
Use IBM i Access ODBC driver (included with OS licensing / SWMA)
The IBM i Access ODBC driver is delivered with Client Access iSeries Access IBM i Access for Windows 7.1 or the IBM i Access Client Solutions Application Packages, which are currently only available for Windows and Linux. If people are interested in a Mac OS X version of the IBM i Access ODBC driver please vote on this RFE.
For ibm_db connections to an IBM i database, there are also two options:
Running on Linux/Mac/Windows/...: use DB2 Connect Unlimited Edition for System i (extra cost)
Running on IBM i: Use native IBM i CLI (free)
So, if you're running production on IBM i, even if we added an IBM i Access ODBC driver for Mac OS X, it still wouldn't help you, since the ibm_db driver does not work with the IBM i Access ODBC driver. :( You could use ruby-odbc in development and ibm_db in production, but I'm guessing you don't want to do that.
Now, if you're not running production on IBM i, you must be using DB2 Connect in production, so then I'd see if there were any more DB2 Connect licenses for you to use in development.
this is the official IBM opensource repo for odbc drivers:
https://public.dhe.ibm.com/software/ibmi/products/odbc/

jtds and rjdbc classpath - Error in .jfindClass

I am trying to connect to an SQL server using the jtds driver for JDBC connectivity but the JDBC call in RJDC keeps coming back with an error message. I am using R in Mac OSX
'Error in .jfindClass(as.character(driverClass)[1]) : class not found'
I am able to successfully create the connection when I use Microsoft's JDBC driver but for the life of me, I cannot figure out why the classpath to jtds JDBC driver can simply not be found.
The following script call works with the Microsoft JDBC driver
drv <- JDBC("com.microsoft.sqlserver.jdbc.SQLServerDriver","/Library/Java/Extensions/sqljdbc4.jar", "‘")
The jtds call that does not work is
drv <- JDBC("net.sourceforge.jtds.jdbc.Driver","/Library/Java/Extensions/jtds-1.3.0-dist/jtds-1.3.0.jar","‘")
Could someone please shed some light if you are aware of the potential error I am making
Try using jtds-1.2.7 instead. I had exact same problem with jdts-1.3.1 on Linux which disappeared when I switched to 1.2.7.

Microsoft ODBC for Oracle and JDBC

Is the Microsoft ODBC driver for Oracle compatible with JDBC? If so, could an example be given?
Java ships with a JDBC-ODBC bridge, so if you can make a connection with ODBC, you can use the JDBC-ODBC bridge. However, the Oracle JDBC driver is to be preferred, since this is software provided by Oracle for connecting to their database. There is a driver for each database server version. The Oracle JDBC driver is a free download (after you create an account)

Resources