Topic Connecting to Teradata DB

deleted user started the topic:
2009-10-15 12:48

Connecting to Teradata DB

I'm trying to connect to a Teradata DB in the Profiler, but am having issues.

I've registered the "com.teradata.jdbc.TeraDriver" driver, but when I try to connect with a connect string like "jdbc:teradata://{address}", put in the correct id/pw and click "Connect to Database", nothing happens. I don't get an error message, the window doesn't disappear, the program doesn't crash...nothing happens.

I've used this Teradata driver and connect string in my own Java apps, so I know that part is correct. Is there something else I need to set up?
Kasper Sørensen replied:
2009-10-16 06:59
Hi newerakb,

For the next version of DataCleaner we've fixed a bug which I think is what is causing your problem (ie. the bug is that we need to show the user an error message that is otherwise only logged). You can do either of two things:
  • Run DataCleaner using the .cmd or .sh commands, which will make the command line appear in the background of the application. You should be able to see the error exception in the command line.
  • Download the latest snapshot of our development version which has the bug fixed: get it here
deleted user replied:
2009-10-16 12:28
Thanks for the reply. I tried the new version and am now seeing the following error (actual address masked):
java.sql.SQLException: No suitable driver found for jdbc://{address}

I have the driver registered, the logfile shows this:
INFO main dk.eobjects.datacleaner.gui.model.DatabaseDriver - Loaded class: com.teradata.jdbc.TeraDriver

Again, I've used this exact driver with this exact connect string in other Java apps, so I'm fairly certain that isn't the issue. Since all the profiler asks for is a connect string, id, and pw, how does it know which driver to use to connect?

Thanks again
deleted user replied:
2009-10-16 13:29
Okay, I've solved that problem, and of course ran into another. I just needed to add "teradata:" to my connect string, like "jdbc:teradata://{address}".

Here's my current issue. When using Teradata JDBC, two driver files are requires. There's the main file, "terajdbc4.jar", and a config file, "tdgssconfig.jar". Both are required to connect using JDBC.

The problem is that the config jar doesn't actually contain a Java class, so I can't register it within the DataCleaner application. All it contains is a manifest and an xml file. I've added both the filepath and the directory path where the jar resides to my own CLASSPATH variable in Windows, but I still get the error messages associated with the config jar missing.

Any suggestions?
deleted user replied:
2009-10-16 14:08
Just to keep this updated, section 1.5 on the following link has a situation involving this gss configuration file

I added the path to the xml file to the classpath and I still can't connect. So it looks like I won't be able to use DataCleaner without having some extra mechanism for registering a driver without a class.
Kasper Sørensen replied:
2009-10-16 15:10
Hi newerakb,

I see your problem. It's true that you can't put additional non-driver JARs on the classpath from within the application. You can however edit the .cmd/.sh file to include them in the classpath when starting up the JVM.

In the .cmd, here's how to do it:

1. Open datacleaner.cmd file in a text editor (eg. notepad or similar)
2) Go to the last line of the file and remove this part (the ending of the line):
-jar datacleaner.jar
3) Instead enter:
-cp datacleaner.jar;tdgssconfig.jar dk.eobjects.datacleaner.gui.DataCleanerGui
Kasper Sørensen replied:
2009-10-16 15:11
(the previous post is assuming the the "tdgssconfig.jar" file is placed in your datacleaner directory.
deleted user replied:
2009-10-16 16:40
Thanks kasper, that worked beautifully! Working with Teradata I've learned to not get my hopes up with regard to finding any help with 3rd-party tools. Glad it worked out this time.

Thanks again.
Kasper Sørensen replied:
2009-10-16 17:16
Very glad it worked! I guess we can brag a bit about that in the datacleaner crew then ;-)
deleted user replied:
2009-10-16 17:38
I guess I can confirm then that "com.teradata.jdbc.TeraDriver" is the correct classname, and "jdbc:teradata:{address}" is the correct connect string, in case you ever feel like adding it to the default list.
Kasper Sørensen replied:
2009-10-17 07:36
Hehe I've gone and added it right away.
sheridany replied:
2011-03-12 02:45
I downloaded the windows version but all reference here to the platform independent version. Is there a way to make a teradata connection work on the windows version?
sheridany replied:
2011-03-12 03:46
Here is the log I am getting. I changed the class to point to the jar files in the datacleaner directory.

Could not establish connection

Stack Trace:
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
javax.swing.DefaultButtonModel.setPressed(Unknown Source)
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
java.awt.Component.processMouseEvent(Unknown Source)
javax.swing.JComponent.processMouseEvent(Unknown Source)
java.awt.Component.processEvent(Unknown Source)
java.awt.Container.processEvent(Unknown Source)
java.awt.Component.dispatchEventImpl(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Window.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.EventQueue.dispatchEvent(Unknown Source)
java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source) Source)
VoRCeK replied:
2015-03-29 15:47
I need to revive this topic. I've followed all instructions I can find but, still cannot connect. When I add the drivers like normal I get this Error:

Could not initialize class com.teradata.tdgss.jtdgss.TdgssManager

I also changed the .cmd file like Kasper suggested and all I got was 'cannot find dk.eobjects.datacleaner.gui.DataCleanerGui'

If anyone can suggest anything else, please help.

Thank you

Kasper Sørensen replied:
2015-03-30 08:21
Hi there,

The class name 'dk.eobjects.datacleaner.gui.DataCleanerGui' is also very (VERY) old.

If you're using Professional Edition then the correct class name is:

If you're using Community Edition (4.x version) then the class name is

If you're using Community Edition (3.x version) then the class name is
Patel replied:
2015-06-24 13:01
I am not able to find .cmd file in Datacleaner installation directory. I already setup classpath to directory where both JAR file exists but still no luck.
Patel replied:
2015-06-24 13:03
I am using Datacleaner community Edition 3.7.2. Getting error Could not initialize class com.teradata.tdgss.jtdgss.TdgssManager.
Kasper Sørensen replied:
2015-06-29 18:02
Simply start DataCleaner using the following command on the command line (version 4.x):
java -cp datacleaner.jar;tdgssconfig.jar org.datacleaner.Main
or version 3.x:
java -cp datacleaner.jar;tdgssconfig.jar dk.eobjects.datacleaner.gui.DataCleanerGui
You can put that in a .cmd file as well if you wish to save it for later :-)
You are not signed in.
You need to be signed in to participate in the discussion.