Pentaho Driver Class could not be found, make sure the Generic Database Driver (Jar File) is installed

Pentaho Driver Class could not be found, make sure the Generic Database Driver (Jar File) is installed

Where can I get a generic database driver? Nothing comes up when I do a Google search.

This wasn't very helpful. Anyone have any advice?

Upvotes: 0

Views: 1074

Answers (1)

nsousa
nsousa

Reputation: 4544

There is no such thing as a generic jdbc driver.

The difference between generic jdbc connection and others is the following:

  • for specific connections the user sets the hostname, port, username&password and eventually some other optional fields (such as instance for mssql); In generic connection user must specify the full url and the driver class.
  • Specific connections sometimes have some extra intelligence embedded (e.g. getName vs getAlias in MySQL); generic connections don’t do that type of post-processing, whatever comes from the jdbc driver is added to the stream.

So, to set up a generic connection (for sake of argument, let’s say postgres), you need the full postgres jdbc url, the driver class name and credentials. If you need to switch to a different type of database (say Oracle) you can use variables for the driver class name and url. But the driver is still a specific one.

When should you use a generic connection?

  • if you need to switch target db types in runtime (though beware that SQL syntax may vary)
  • If the database you want to connect to isn’t in the list of supported databases
  • If you need a different driver class than the one set up in the specific connection (e.g, MySQL 5.x vs MySQL 8)
  • If your connection requires some tweaks to the url from what the default url provided by the jdbc driver says

But if you want to connect to MySQL 8 using a generic connection you still need a MySQL 8 JDBC driver.

Upvotes: 2

Related Questions