table1.SetKey;
table1.FieldByName('学号‘).AsString:='+quotedstr(edit1.Text)';
if  (table1.GotoKey) then
messagedlg('error',mterror,[mbok],0)。
我用上述代码查询学号为EDIT1里的值为什么不行是不是查询语句不是这样的呀那该怎么写呀。
还有我发现表有table1.filedbyname()属性。查询也有query1.fieldbyname()它们之间到底有什么不同呀。
希望大家赐教。

解决方案 »

  1.   

    table1.filedbyname()和Query1.filedbyname()是一样的,都是取值
      

  2.   

    用Query1吧
    query1.close;
    qeury1.SQL.text := 'select * from table1 where 学号=''' + edit1.text + '''';
    query1.Open;
    这样不是很方便吗?
      

  3.   

    [Error] sel.dpr(53): Undeclared identifier: 'qeury1'
    [Error] sel.dpr(53): Missing operator or semicolon
    [Error] sel.dpr(53): Unterminated string
    [Error] sel.dpr(54): Missing operator or semicolon
    [Fatal Error] sel1.dpr(6): Could not compile used unit 'sel.dpr'
    我开始就是这么写的但出错信息如上。麻烦你再帮忙看一下。急呀。我都调了两天了。
      

  4.   

    table1.SetKey;
    table1.FieldByName('学号‘).AsString:=quotedstr(edit1.Text);
    if  (table1.GotoKey) then
    messagedlg('error',mterror,[mbok],0)。
      

  5.   

    table1.SetKey;
    table1.FieldByName('学号‘).AsString:=trim(edit1.Text);
    if  (table1.GotoKey) then
    messagedlg('error',mterror,[mbok],0)。
      

  6.   

    table1.filter:='学号='''+edit1.text+'''';
    tabele1.filtered:=true;