我已经使用了teradata软件包大约6个月了,并且在没有问题之前更改了我的密码。在我最近的密码更改后(通过ODBC管理员),我可以通过Teradata SQL Assistant访问服务器。但是,当我尝试在python中连接时,我遇到以下错误:
代码:
import teradata
udaExec = teradata.UdaExec(appName="HelloWorld", version="1.0", logConsole=False)
udaExec.connect(method="odbc", dsn="my_dsn_name_example")
错误消息#1:
DatabaseError: [HY000] [Teradata][ODBC Teradata Driver] Loading the Teradata ICU Library Failed. Error is: 126, The driver returned invalid (or failed to return) SQL_DRIVER_ODBC_VER: 03.80
当我在udaExec.connect函数中明确定义用户名和密码时,我收到同样的错误。
当我在udaExec.connect中输入故意不正确的用户名和密码时,会出现同样的错误。因此,我可以得出结论,用户名和密码没有正确传递。
我尝试删除ODBC管理员中的连接,并在删除连接后运行代码后获取以下错误代码:
错误消息#2:
DatabaseError: [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
这表明teradata包实际上引用了这个ODBC驱动程序,但是当我重新添加用户名和密码时,我再次收到错误消息#1。
我尝试卸载并重新安装teradata软件包,但仍然收到同样的错误。