我需要一个TFDTable对象链接到一个firebird数据库的SQL视图(没有查询,我必须使用这个视图!)。该对象应该接受更新,因此我将UpdateOptions.UpdateTableName属性设置为底层基表:
object fdtPRODUCTS_VIEW: TFDTable
IndexFieldNames = 'PRODUCT_ID'
Connection = FDConnection1
UpdateOptions.UpdateTableName = 'PRODUCTS'
TableName = 'PRODUCTS_VIEW'
Left = 200
Top = 48
end
但是UpdateTableName属性没有效果:每次我尝试更新表时都会收到消息:
[FireDAC] [Phys] [FB]无法更新只读视图PRODUCTS_VIEW。
根据文档维基页面http://docwiki.embarcadero.com/Libraries/XE8/en/FireDAC.Stan.Option.TFDBottomUpdateOptions.UpdateTableName,这个属性是我的问题的理想解决方案,但我可以让它工作。
我用XE5和XE8进行了测试 - >相同的结果。