Delphi-使用FireDAC连接到Teradata DB(在虚拟机上)

Delphi-使用FireDAC连接到Teradata DB(在虚拟机上),delphi,teradata,firedac,Delphi,Teradata,Firedac,开门见山: Windows 10 x64主机运行VMWare Player 12,该播放器运行从teradata网站下载的“TDE 16.00.04 SLES 11”linux操作系统。虚拟机预装了teradata DB,工作正常,我可以从主机用teradata Studio Express连接到它。(还有一个adhoc.c文件,可以帮助您测试虚拟机上的ODBC连接,工作正常)。 我已从Teradata网站下载并安装了“Teradata ODBC Windows驱动程序”。 使用Delphi B

开门见山:
Windows 10 x64主机运行VMWare Player 12,该播放器运行从teradata网站下载的“TDE 16.00.04 SLES 11”linux操作系统。虚拟机预装了teradata DB,工作正常,我可以从主机用teradata Studio Express连接到它。
(还有一个adhoc.c文件,可以帮助您测试虚拟机上的ODBC连接,工作正常)。
我已从Teradata网站下载并安装了“Teradata ODBC Windows驱动程序”。

使用Delphi Berlin 10.1,我创建了一个新项目,在主窗体中添加了TFDConnection组件和TFDPhysTDataDriverLink组件,添加了设置连接字符串和连接到DB的按钮
将TFDPhysTDataDriverLink ODBCDriver属性设置为“Teradata数据库ODBC驱动程序16.00”。设置连接字符串:

Connection.Params.Values['DriverID']  := 'TData';
Connection.Params.Values['Server']    := '192.168.56.128';
Connection.Params.Values['Database']  := 'dbc';
Connection.Params.Values['User_Name'] := 'dbc';
Connection.Params.Values['Password']  := 'dbc';
当我尝试连接时,我遇到的异常不会显示任何信息:

[FireDAC][Phys][ODBC]


(是的,仅此而已,没有其他内容)
我还尝试添加用户和系统DSN条目(32位),并尝试设置数据源参数:

Connection.Params.Values['DriverID']  := 'TData';
Connection.Params.Values['Datasource']:= 'testdsn';
Connection.Params.Values['User_Name'] := 'dbc';
Connection.Params.Values['Password']  := 'dbc';
执行此操作时,错误消息会显示:

Data source name not found and no default driver specified

如何从delphi正确设置连接?我如何获得有关问题的信息?
有什么想法吗?有什么建议吗?
我们将不胜感激。

您是否尝试过从IDE连接?@Victoria:我尝试过使用FireDAC explorer。添加了新连接,DriverID:TData等。信息选项卡显示:加载驱动程序TData。。。正在加载odbc32.dll驱动程序管理器正在创建ODBC环境句柄搜索ODBC驱动程序。。。正在检查ODBC驱动程序[Teradata]。。。错误:未找到指定的ODBC驱动程序。您可能已经安装了64位ODBC驱动程序(因为据我记忆,IDE只能是32位的)。因此,您可能会因为这个选项而运气不佳(尽管这是我第一次尝试)。所以你的应用程序。和驱动程序是64位的,对吗?您确定指定了32位DSN而不是64位吗?这两个系统的管理员看起来完全相同,但它们对两个不同的Windows子系统可见。首先,我安装了32和64个驱动程序,将32和64都设置为完全相同的DSN以确保安全。没有成功。然后我删除驱动程序,只安装32个。仍然没有成功。