Site Network: Home | About

Teradata ODBC on Vista

You know I am still living with Vista :) Somehow I am managing it, though at times it becomes hard to work with it. Vista is cool, but other software's compatible with Vista…just a bit hard to find, and even if you find it, it would be hard to make it work with Vista.

I wanted to explore Teradata and so recently downloaded the latest Teradata 13 from www.teradata.com/downloadcenter/. Great news Teradata 13 officially supports Vista, and even Windows 7 – really cool!

It all worked for me…I could able able to query the tables using SQL Assistant well. But I experienced some issue with Teradata ODBC – driver was not getting loaded. When I use a DSN created using Teradata ODBC driver, it was throwing some error like “Specified driver could not be loaded due to system error 126”

Below error screen shot was when I used DataDirect driver. I had the same issue even with Teradata ODBC driver (I think Teradata either does not have a native driver or it recommends its ODBC driver – I could not see a Teradata native driver one like Oracle’s)

image

It appears it could not able to locate the actual driver file. But it is not – I verified the registry and it actually was pointing to a correct file.

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Teradata  =>  C:\Program Files\Teradata\Client\13.0\ODBC Driver for Teradata\Lib\tdata32.dll

After doing some research and googling, I realized that it actually not the driver but some of its supporting files causing this issue. There are few .dll files at the below location which perhaps were not getting loaded along with driver file.

C:\Program Files\Teradata\Client\13.0\Shared ICU Libraries for Teradata\lib

icudttd36l.dll
icuintd36.dll
icuiotd36.dll
iculetd36.dll
iculxtd36.dll
icuuctd36.dll

I added this location to the system path and it finally worked. In your case, if it does not work just by adding it to the path, copy the .dll files to windows\system32.

Hope it saves sometime when you encounter the similar issue :)

Update (04/25/2010):

It seems Teradata has its own CLI (Call-Level Interface) for clients to be able to connect database server via network. Following methods are supported by Teradata in the Network.

  • NET Data Provider for Teradata
  • Java Database Connectivity (JDBC)
  • OLE DB Provider for Teradata
  • Open Database Connectivity (ODBC)
  • Teradata CLIv2 for Network Attached Systems (also available for Channel Attached Systems)

Teradata documentation says that the client applications can use the following APIs to communicate with Teradata Database:

  • NET Data Provider
  • Java Database Connectivity (JDBC)
  • Open database Connectivity (ODBC)

Notice that there is no Teradata CLI to use it with a client.

Update (04/26/2010):

Few of the Teradata client tools like BTEQ and FastLoad are also experiencing the similar driver locating problem. Add the location “C:\Program Files\Teradata\Client\13.0\CLIv2” to your problem.

Problem Symptom: When you open FastLoad an error dialog box is thrown saying that “This application has failed to start because wincli32.dll was not found” and suggests to reinstall the software to fix the same. Please do not reinstall, I tried and it did not work. Like I said, just update your user/system path.

Karteek

6 Comments:

  1. amar said...
    Thanks a lot Karteek. I spent almost a week to get rid of this error. I tried every possible technique & goggled almost every page related to this topic but no luck. Finally i landed at your page & got the solution. Thanks a lot again for sharing this invaluable & of course, surreptitious piece of information.
    Purna said...
    Thanks Karteek it helped me solve my sql assistant error.
    Aravind said...
    Thank you so much, as you said i was also hittin my head elsewhere! Finally, your recommendation fixed the issue!
    Karteek said...
    Glad it helped!
    JOSHUA said...
    Thank u so mush,i worked...GOOD!!
    Segan81 said...
    Thanks a lot for the actualization in the article

Post a Comment