我有一个系统在 Delphi 7与zeos 6中,我使用以下函数:
function zIncCodeByYear (zQry : TZquery; ....): String;
var
zConLocal, zConOriginal : TZConnection;
...
begin
bActive := zQry.Active;
zConOriginal := zQry.Connection;
字符串
这总是工作得很好,现在我需要将此系统转换为 Delphi Seatle,并因此,到Zeos Backbone.js (7.2),安装此版本后,在时间编译,我得到的错误:
[dcc32错误]返回上一页(265):E2010不兼容的类型:“TZConnection”和“TZAbstractConnection”(TZ连接和TZ抽象连接)
会发生什么事呢?在这个版本中如何从zquery获取连接?
2条答案
按热度按时间siv3szwd1#
您可以简单地使用ZAbstractConnection,转换为TZConnection对您来说没有什么区别。无论你做什么,在这个特定的情况下都没有错。
在TZConnection的帮助下,一些属性,如数据库,协议,...正在出版。在基类TZAbstractConnection中,这些都是公共的。
hgb9j2n62#
你并没有提供太多的代码。但据推测,Zeos将
TZQuery.Connection
的类型改为TZAbstractConnection
。因此,您只需按如下方式更改局部变量声明:字符串
同时也要记住这个原则:Program to an interface, not an implementation(不幸的是,这个问题的公认答案非常有趣,但错误。至少我链接的答案是正确的)。