1

我想使用适用于 SQL Server 17 的最新 Microsoft ODBC 驱动程序连接我的 FireDAC 应用程序,但我的连接始终使用 SQL Server Native Client 11 驱动程序。

这是我试图指示所需驱动程序的代码:

FireDriverLink := TFDPhysMSSQLDriverLink.Create(nil);
FireDriverLink.ODBCDriver := 'ODBC Driver 17 for SQL Server';
FDConnection.DriverName := FireDriverLink.BaseDriverId;

为了检查使用的驱动程序,我提出了一个异常并阅读了错误消息:

FDConnection.ExecSQL('select convert(integer, ''X'')');

[FireDAC][Phys][ODBC][Microsoft] [SQL Server Native Client 11.0][SQL Server]Error de conversión al convertir el valor varchar 'X' al tipo de datos int.

告诉 FireDAC 使用 SQL Server 17 的 ODBC 驱动程序的正确方法是什么?另外,我还可以告诉 FireDAC 在设计时使用最新的 ODBC 驱动程序而不是本机客户端吗?

谢谢你。

4

1 回答 1

1

设计时:在数据模块或表单上放置一个 TFDPhysMSSQLDriverLink 并将 ODBC 驱动程序设置为:下拉列表中的SQL Server 的 ODBC 驱动程序 17 。

之后打开您的 TFDConnection 并切换到Info选项卡并检查它最终使用的驱动程序以及它提到的任何注释。

来自 OP 的注释:为了为我工作,我需要在其 DriverID 属性上为 TFDPhysMSSQLDriverLink 组件命名,并将该名称设置为 TFDConnection 的 DriverName 属性。

于 2020-09-25T18:32:12.497 回答