我使用的是access数据库
我想实现这样的功能:
把一个表中的满足一定条件的数量插入到另一个表中去。
界面是这样安排的:
一个TComboBox,TEdit,TComboBox中放的是">","<"类似于这样的条件,TEdit中放的分数,这样就是实现把一个表中的满足大于多少分的
或小于多少分的记录数插入到一个表中,我做的一条语句如下:
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('insert into Condition_unit(unit)select count(a.sum)
                from Grade as a where a.Date = '''+ss+''' and                                 a.sum+'''+ComboBox1.text+'''+'''+Edit1.text+'''');
Query1.ExecSQL;
我这样做总是出错,错误提示为在'''+ComboBox1.text+'''和'''+Edit1.text+'''之间不能有+号,但去掉
+号之后又提示两个引号之间离的又太近。
请哪位高手指教指教where后面的条件应该怎样写才能将两个控件联合起来作为条件,答对者一定给分!!!!!!!!!!!!!!!

解决方案 »

  1.   

    'insert into Condition_unit(unit)select count(a.sum)
                    from Grade as a where a.Date = '''+ss+''' and a.sum'+ComboBox1.text+'''+Edit1.text+''''
      

  2.   

    ComboBox1.text没有引号程序提示错误!!!
      

  3.   

    如果a.sum是数值型的话,应该是这样子的才对。
    Query1.SQL.Add('insert into Condition_unit(unit)select count(a.sum)
                    from Grade as a where a.Date = '''
          +ss+'''and a.sum'+ComboBox1.text+Edit1.text);
      

  4.   

    'a.sum+'''+ComboBox1.text+'''+'''+Edit1.text+''''中的ComboBox1.text和Edit1.text是否要作为一个值,还是应该分别属于不同的变量?你可以换成别的试一试。比如:我换成这样的:' and a.sum='''+'bbb'+'''+'''+'ccc'+'''',那么结果就成了:‘and a.sum='bbb' +'ccc'’,应该不是你想要的结果吧。不如先用变量把ComboBox1.text和Edit1.text组合以后,再加入。
      

  5.   

    如果a.sum是数值型的话,应该是这样子的才对。
    Query1.SQL.Add('insert into Condition_unit(unit)select count(a.sum)
                    from Grade as a where a.Date = #'
          +ss+'# and a.sum'+ComboBox1.text+Edit1.text);
      

  6.   

    同意 : into
      #39