gpt4 book ai didi

delphi - 模式更改后,Firedac查询字段列表未更新

转载 作者:行者123 更新时间:2023-12-03 18:31:53 25 4
gpt4 key购买 nike

我正在SQL中创建一个临时表,然后向其中添加一个新字段。似乎Firedac正在为此临时表缓存字段列表。
以下代码为我提供了“ FDQuery5:找不到字段“可用”。”

  FDQuery5.Connection := FDConnection1;
FDConnection1.ExecSQL('Select StockNo into #Temp from Stock');
FDQuery5.SQL.Text := 'Select * From #Temp';
FDQuery5.open;
FDConnection1.ExecSQL('Alter Table #Temp add Available Char(1)');
FDQuery5.Close;
FDQuery5.open;
ShowMessage(FDQuery5.FieldByName('Available').AsString);


在Firedac中使用XE5。
我尝试了Connection.RefreshMetadataCache,并从FetchOptions.Cache中删除了fiMeta。

如果修改SQL.Text,我可以让Firedac识别新字段。这是不可取的,因为我的应用程序需要在很多地方进行修改。

最佳答案

调用FDQuery5.Close后,查询将保持准备状态。这意味着,它还缓存结果集结构。要准备查询,请用FDQuery5.Disconnect替换FDQuery5.Close。

关于delphi - 模式更改后,Firedac查询字段列表未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22317748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com