我在一个TADODATASET的的sql语句味
sql:=' select *  from count where user='+user+' and pwd='+pwd;
总是有异常,提示为from子句出错为什么?

解决方案 »

  1.   

    count是sql里的关键字 你用它做表名 不出错才怪
      

  2.   

    对啊你的名是数据库的关键字换个名字 比如改为count1之类的
      

  3.   

    count是sql关键字,会造成误解,如果一定要这样的话,可以用方括号括起来,但最好将表名改一下
    sql:='select * from [count] where user='+QuotedStr(user)+' and pwd='+QuotedStr(pwd);
    另外字符串的查询需要引号
      

  4.   

    首先看看有没有连错数据库, 如果没错, 看看有没有Count这个表, 有的话,用这句再试试:
    SQL := 'Select * from Count where User = ''' + User + ''' and pwd = ''' + pwd + '''';如果还不行, 试试把User这个字段改一下. 因为User好像是Access的保留字. 我试过"Select * from User" 这样也会错, 后来改名就没事了.
      

  5.   

    user:=trim(combobox1.Text);
        pwd:=trim(edit1.Text);
        //sql:=' select *  from count where user='+user+' and pwd='+pwd;
        sql:='select * from work ';
        dataset:=tadodataset.Create(self);
        dataset.Connection:=mainform.ADOConnection1;
        dataset.CommandText:=sql;
        dataset.Open;
    这样写还是出错啊,提示说是语法错误。
      

  6.   

    CommandType := cmdText;
      CommandText := 'SELECT * FROM CustomerTable';
      Open;