我有一个python程序,意味着连接到teradata数据库。服务器名称是默认的。两个人可以成功使用python程序,但是一个人不能并且收到以下错误消息:
'[08001][TPT] [ODBC SQL Server Wire Protocol driver] Invalid connection Data
., [TPT][ODBC SQL Server Wire Protocol driver ]Invalid attribute in connection string : DBCNAME.'
获取错误消息的人可以访问该服务器并使用Teradata。
Python代码:
import teradata
udaExec = teradata.UdaExec (appName="test", version="1.0",
logConsole=False)
session = udaExec.connect(method="odbc", system=servername,username=user1, password=passw)
答案 0 :(得分:4)
如果查看日志,可以看到可能有多个Teradata驱动程序设置到ODBC配置中。
要设置正确的Teradata驱动程序,您可以为连接方法添加驱动程序属性:
session = udaExec.connect(method="odbc", system="servername", username=user1, password=passw, driver="Teradata");
连接到Teradata的另一种方法可能是在ODBC设置中使用用户定义的DSN:
import teradata
udaExec = teradata.UdaExec (appName="test", version="1.0", logConsole=False)
session = udaExec.connect(method="odbc", dsn="<dsn-defined-by-user>", username=user1, password=passw)