Delphi 将计算字段值保存到另一个表

Delphi 将计算字段值保存到另一个表,delphi,Delphi,我已将一个新字段添加到表中,并使其成为计算字段。我想将其值保存到另一个表中。但是,我的查询(我用来插入它的值)没有将这个计算字段识别为表的一部分,并不断向我抛出一个错误,即没有这样的字段。我错过了什么 UNIQuery3.SQL.Text :='INSERT or ignore into MAIN (LOK_ID,Date,surname,name,T1,T2,T1_1,T2_2,X1)' + 'select LOK_ID,Date,surname,name,T1,T2,T1_1,T2_2,X

我已将一个新字段添加到表中,并使其成为计算字段。我想将其值保存到另一个表中。但是,我的查询(我用来插入它的值)没有将这个计算字段识别为表的一部分,并不断向我抛出一个错误,即没有这样的字段。我错过了什么

UNIQuery3.SQL.Text :='INSERT or ignore into MAIN (LOK_ID,Date,surname,name,T1,T2,T1_1,T2_2,X1)'
 + 'select LOK_ID,Date,surname,name,T1,T2,T1_1,T2_2,X1 from TEMP';
UNIQuery3.ExecSQL;

X1在表TEMP中计算。主要是整数。

直接在sql中嵌入
X1
的值:

var
  x1: integer;
begin
...
  x1 := table.FieldByname('X1').AsInteger;
...
 + 'select LOK_ID,Date,surname,name,T1,T2,T1_1,T2_2,' + IntToStr(x1) + ' from TEMP';

显示一些代码。计算字段只存在于代码中,sql在数据库中的表上运行时不知道它。我如何克服这个问题?有可能吗?我只有一个小问题,伊戈尔。如果我还有两个像这样的字段要保存,那么语法会是:“+IntToStr(x1)+”,“+IntToStr(x12)+”,“+IntToStr(x3)+”from TEMP???为什么不试试呢?是的。谢谢……我还想做点别的……没关系……我今天学到了一些东西……)