環境:Win8.1 + XE8 up1 + SQLServer
一個專案以前用 UniDAC ,現在改成 FIreDac ,碰到個問題。
使用 FDQuery 的時候,比如
qry1.sql.append('select KeyId as 標識 , userName as 用戶名 from tablename');
qry1.open;
在對應的 Grid 中編輯 或 使用陳述句
qry1.fieldByName('標識').asInteger := 100;
修改,在保存的時候 SQL Server 會拋出 無效的列'標識'的例外,使用SQLServer 監視器跟蹤陳述句,發現 FireDac 更新的時候 使用了類似 update table set 標識=100 where 標識=1 這樣的陳述句進行更新。
這個有什么解決辦法嗎?
uj5u.com熱心網友回復:
建議FDQuery1.SQL.Text := 'select KeyId , userName from tablename';
FDQuery1.FieldByName('KeyId').DisplayLabel := '標識';//DisplayName; DisplayText
FDQuery1.FieldByName('userName').DisplayLabel := '用戶名';
uj5u.com熱心網友回復:
xe8 up1都出了? 給個鏈接uj5u.com熱心網友回復:
我也遇到過這個問題,等高手解答uj5u.com熱心網友回復:
database 都沒有“標識”這個欄位,肯定出錯,先不用AS之類的試一下,有可能是bug轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/78870.html
標籤:數據庫相關
上一篇:請問如何轉為DELPHI
下一篇:新人求教 begin 錯誤啊
