All Forums Connectivity
mikedingwall 2 posts Joined 08/11
29 Sep 2015
Connecting to TD15 from Visual Basic

I have an Excel tool that I use that connects to Teradata and brings back database information to the spreadsheet. This has been working just fine with the following connection string:-
' Create the Connection object
    Set Conn = New ADODB.Connection
    strConn = "PROVIDER=MSDASQL;DRIVER={Teradata};DBCName=" & systm & ";User ID=" & UID & ";Password=" & pswd & ";"
' Assign the connection string and provider, then open the Connection
    Conn.ConnectionString = strConn
    Conn.Provider = "teradata"
    Conn.Open strConn
However, when I recently upgraded my TTU drivers to TD15 then it stopped working and I started getting the following error:
                Runtime error '-2147217843 (80040e4d)':
                [Teradata][Teradata ODBC Driver] Not enough information to log on
I tried changing the connection string to accept the additional information that TD15 is looking for and then I get an error in the VB code saying that there are too many parameters.
Anyone had this problem and know how to fix it?

Fred 1096 posts Joined 08/04
29 Sep 2015

I don't know what you mean by "additional information that TD15 is looking for".
Try it using the connection string keywords documented in the manual:
 strConn = "PROVIDER=MSDASQL;DRIVER={Teradata};DBCName=" & systm & ";UID=" & UID & ";PWD=" & pswd & ";"
 

mikedingwall 2 posts Joined 08/11
30 Sep 2015

It was a while ago that I was investigating this and I am sure I found some additional parameters that I tried to add without success, though I can't find the reference to that now - maybe I imagined it!
 
I'll try what you suggest - thanks.

NetFx 346 posts Joined 09/06
30 Sep 2015

I recommend that youread section #3 of 
http://developer.teradata.com/blog/netfx/2011/12/setup-sql-server-2008-r2-linked-server-to-the-teradata-database
Use a UDL file to get the Connection String. Note that your Connection-String points to the "Microsoft OLE DB Provider for ODBC" (i.e. Provider=MSDASQL) however later you set the Provider to Teradata. You can safely remove "Conn.Provider = "teradata"". Also you are attempting to use a DSN-Less ODBC Connection String. Therefore all Teradadata ODBC specific properties must be passed as Extended Properties . I suggest you start with DSN connection string first and later enhance you application to a DSN-Less connection string
https://msdn.microsoft.com/en-us/library/windows/desktop/ms722656(v=vs.85).aspx
https://msdn.microsoft.com/en-us/library/ms675326(v=vs.85).aspx
 

You must sign in to leave a comment.