我已经使用UniDac很长时间了,并且决定继续使用FireDac,因为它有很好的同步方法,在继续使用之后,我发现我的数据编辑不再起作用了--它给了我一个错误:
FireDAC-330无法生成更新查询。更新表未定义。
我在这里试图做的是,我有一个TFDStoredProc组件,它从数据库中获取所有数据,并允许我编辑它,使用unidac,我可以轻松地编辑数据,不会出现这样的问题:
StoredProc.Edit;
StoredProcCreatedID.Value := SomeValue;
StoredProc.Post;而且它成功了,但是对于AnyDac,我尝试手动指定UpdateTable,这导致了另一个问题:
FireDACODBCSQL服务器本机客户端11.0无效列名“CreatedID”。
我正在使用Microsoft 2012 FireDac 8.0和存储过程来获取结果,有什么想法吗?
P.S.
该查询如下所示
SELECT
CreatedBy as CreatedID,
usr.UserName as CreatedBy
FROM
Sales
LEFT JOIN
Users usr ON usr.ID = Sales.CreatedBy看起来FireDac更新构建器不识别字段上的别名,任何帮助都将不胜感激。
发布于 2014-07-01 06:46:44
我发现了问题所在,如果您在查询中指定了一个别名-属性将被设置为别名,而不是我下载的CNPack a必须为delphi开发人员提供的免费字段,运行组件选择器并将所有别名字段更改为它们的真实字段,这仍然是FireDac组件中的一个大问题,因为它不识别别名字段,让我们希望将来能够修复它,为每一个查询指定它应该更新的表,以及如果您是从一个大项目(我的例子是220+存储过程)迁移的话,那么只需要分配哪些字段。
https://stackoverflow.com/questions/24497288
复制相似问题