这个语句有误,请大家改一改:
sql.Add('insert into t_produce values ('''+TeThemeRadioGroup1.Items.Strings[TeThemeRadioGroup1.itemindex]+''',
select * from base where 编号='''+TeThemeEdit1.Text+''','''+TeThemeEdit2.Text+''',
'''+datetostr(DateTimePicker1.Date)+''')');    想把从 base 表中直接提取数据和几个用户界面控件(TeThemeEdit1,ThemeEdit2)中的数据插入到 t_produce 表中,
  谢谢大家留言!!!谢谢!!!!

解决方案 »

  1.   

    select * from base where 编号要列出所有要的字段,不能用 * 号
      

  2.   

    select * from base where 编号='''+TeThemeEdit1.Text+'''
    这个值的个数是固定的吗?如果不是,肯定不行
    INSERT的VALUES必须对应相应的字段
      

  3.   

    values ()子句里要求加入的是一条记录,而select 子句返回的是一个结果集合,2者是不匹配的。
    一般来说,values里是不能用select子句的。
    如果TeThemeRadioGroup1.Items.Strings是唯一固定的值,那么可能的一个方法是
    sql.Add('insert into t_produce select
     '''+TeThemeRadioGroup1.Items.Strings[TeThemeRadioGroup1.itemindex]+'''
    , * from base where '...后面就一样了
    ) ;