JDBC

  This is where you can download my Type 4 JDBC driver for Teradata.
Note:  Current version released 26 May 2006.

It's a beta, but it works pretty good.  It supports most applications, including most J2EE application servers, such as WebLogic, Websphere, JBOSS, and the J2EE reference implementation.  And it's the only third party JDBC driver for Teradata that currently supports V2R6.1, V2R6.0 and V2R5.1 secure logons.

And, it's free to try out!  You even get support (If you need guaranteed support, contact me for pricing).

If you use this driver, Let me know what problems you run in to, or let me know it is working for you, and what type of use you are using it for.  I really need feedback if people want me to keep working on this project!.

Download the file TdatJdbcDriver.jar, and add it to your CLASSPATH (note the name change from previous versions).

To use it, the class is us.mcdevitt.TdatJdbcDriver,
And the URL is jdbc:tdat:whatever.

For example,

Class.forName ("us.mcdevitt.TdatJdbcDriver");
Connection con = DriverManager.getConnection("jdbc:tdat:mydbcname, "uid", "pwd");


The url can include a port number, and can include optional slashes:
jdbc:tdat://mydbcname:1025

You can use DataSources as well as driver connections.
PooledConnections work, but are not well debugged. Let me know if they work well for you.

The support for 2-phase commit (XA transactions) is not complete and not tested yet.

You can force Teradata vs ANSI transaction semantics in the url:
jdbc:tdat:mydbcname;sessmode=Teradata
jdbc:tdat:mydbcname;sessmode=ANSI

Most of my testing has been with Teradata mode.

Let me know what problems you hit, and I'll fix them.

Compared to the NCR driver, My driver has many advantages:

1) Much faster than the type 2 or type 3 NCR driver (faster than the NCR driver or the JDBC-ODBC bridge driver).  I believe it's a good bit faster than their type 4 driver as well, and is much smaller.
2) More compliant. Passes almost all the Sun JDBC certification tests.
3) Type 4, 100% pure java, doesn’t need any gateway or native code. Runs on any platform that supports a JAVA VM.
4) Works in EJBs, Servlets, Applets, and applications (the NCR type 4 driver probably does all this).
5) Extensive tracing facilities built in.
6) Easy to install -- One jar only.


The current state of the driver is that it's not quite complete. Missing features:

1) Support for updateable cursors (WHERE CURRENT OF).
2) Support for cursor scrolling other than FORWARD_ONLY
3) XA support not complete and not yet tested.
4) LOB support not yet available.

New features of the May 2006 driver:

1)  Support for Teradata V2R6.1
2)  Fix for columns larger than 32767 bytes in length

New features of the July 2005 driver:

1)  New jar name: TdatJdbcDriver.jar instead of TeradataTest.Jar.
2)  Support for Teradata V2R6 logins (TD2 Mechanism)
3)  Performance improved via new IO (but reqires JVM 1.4 or later)
4)  Enhanced tracing can be turned on even if running in an Appserver

New features (and previously undocumented features) of the October 2003 driver:

1)  Support for using the driver with ColdFusion.
2)  Ability to set the default database in the JDBC url:    database=mydefaultdb
3)  Ability to set the account string in the JDBC url:   account=myaccount or account='myaccount'
4)  Trace facility built in.  To use, specify the file to trace to:   trace=c:\temp\myfile.log
5)  Ability to set the partition to other than DBC/SQL:   partition=MONITOR
6)  Fixed a bug that caused SQL statements with newline characters to be rejected by Teradata.
7)  Fixed a bug where '?' characters in literal strings confused the driver.
8)  Fixed a problem with the driver when used with WebSphere.

New features of the December 2003 driver:

1)  Support for V2R5.1 Encrypted "secure" logon sequences.
2)  The beginning of support for some new v2r5.x parcel types.
3)  More advanced tracing.

New features of the January 2003 driver:

1) Fixes for better handling of errors in logon strings, and support for "trace" and "databaseName" properties when loging on via propertySets (these were supported via urls only before).

Note:  If your Application Server doesn't use the JDBC driver manager, it may need to know an "implementation classname".  This would typically be us.mcdevitt.TdatJdbcConnectionPoolDataSource.

   

Back

 

Page last modified 2006-05-26 2004-1-13
Copyright © 2002-2006 Charles F McDevitt.