是不是因为第一个insert语句后面没有execsql.然后就继续执行第二个insert语句就会出现这种情况!

解决方案 »

  1.   

    应该分成两次来插入数据,提示里的非法字符是分号";".你应该这样写:
    Form_Chart.query1.close;
      Form_Chart.query1.sql.clear;
      Form_Chart.query1.sql.add('INSERT');
      Form_Chart.query1.sql.add('INTO 成绩分段ChjFd(人数)');
      Form_Chart.query1.sql.add('SELECT COUNT(*)');
      Form_Chart.query1.sql.add('from 考生信息KSXX');
      Form_Chart.query1.sql.add('where 成绩 between 90 and 100');
      Form_Chart.query1.execsql;
      Form_Chart.query1.sql.clear;
      Form_Chart.query1.sql.add('insert');
      Form_Chart.query1.sql.add('into 成绩分段ChjFd(人数)');
      Form_Chart.query1.sql.add('select COUNT(*)');
      Form_Chart.query1.sql.add('from 考生信息KSXX');
      Form_Chart.query1.sql.add('where 成绩 between 80 and 89;');
      Form_Chart.query1.sql.add('select * from 成绩分段ChjFd');
      Form_Chart.query1.execsql;
      

  2.   

    在Form_Chart.query1.open;
    之前加上:
    ShowMessage(Form_Chart.query1.SQL.Text);看看你的SQL语句有没有错。
    另外清将Form_Chart.query1.open;
    改为:
    Form_Chart.query1.ExecSQL;
    0A
    —————————————————————————————————
    MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
                 毁誉由人,望天上云卷云舒,聚散任风。';
    if Not Assigned(I) then
      I := TI.Create(Nil);
    I.Maxim := MaximStr;
    I.Explain := '假如上述代码中出现“OA”等字样,删除它们';
    I.Desire := '加不加分随你';
    —————————————————————————————————