Close;
SQL.Clear;
STR2:='insert into tk_in01 (shop_id,in_id,in_sno,batch_id,prod_id,tk_bno,tk_eno,tknum,value,sale_price)'+
' values ('''+trim(ADOQuery4.fieldbyname('shop_id').AsString)+''','''+trim(ADOQuery4.fieldbyname('alt_id').AsString)+''','''+trim(ADOQuery4.fieldbyname('alt_sno').AsString)+''','''+trim(ADOQuery4.fieldbyname('batch_id').AsString)+''','''+trim(ADOQuery4.fieldbyname('prod_id').AsString)+''', '+
' '''+trim(ADOQuery4.fieldbyname('tk_bno').AsString)+''','''+trim(ADOQuery4.fieldbyname('tk_eno').AsString)+''','''+inttostr(ADOQuery4.fieldbyname('tknum').asinteger)+''','''convert(char,ADOQuery4.fieldbyname('value').asfloat,1)''','''convert(char,ADOQuery4.fieldbyname('value').asfloat,1)''')';
value 是Money类型。最后的两个字段怎么赋值
或者直接FloatToStr
或者把你的语句改成
sql.text := 'insert into table (a) values(:a)';
parameters.parambyname('a').value := 值
直接写成ADOQuery4.fieldbyname('value').asString即可,无须用SQL语句来转换类型的
二:DataSet.fieldbyname().value