/*
 *按用户名查询
*/
void jTextField1_keyPressed(KeyEvent e) {
  if (e.getKeyChar()==KeyEvent.VK_ENTER){
      String sqlQuery = "Select * From tbUserinfo where UserName     
                       ="+"'"+jTextField1.getText()+"'";
      queryDataSet1.close();
      queryDataSet1.setQuery(new QueryDescriptor(database1, sqlQuery));
      queryDataSet1.open();
      queryDataSet1.refilter();
  }
}

解决方案 »

  1.   

    tbUserinfo代表什么?是结果集吗?是不是相当于一个queryDataSet2 ?
      

  2.   

    那应该要用datastore了吧
    这样就不需要从数据库里按要求提取数据,而是从dataset里再次筛选
    看看JB自带的Samples吧
      

  3.   

    那是SQL语句,tablename!你用QueryDataSet的时候,必须先设置Query属性,里面的SQL语句可以写:Select * From tbUserInfo,等需要再次查询时,比如按用户名UserName查询,可以输入要查询的用户名后回车执行以上代码。就可实现了。
      

  4.   

    楼主的意思是QueryDataSet里的原来的数据还要用到,因为只是从显示出来的数据中缩小范围,那么当需要再次从原来的数据里查询新的数据时就需要回到原来的dataset里的数据,但是如果修改了dataset的query,怎么恢复呢?
      

  5.   

    apan_bj(kerry),你的意思我明白了。我现在想对一个结果集进行查询,将查询的结果保存到另一个结果集,不知道能不能实现?
      

  6.   

    apan_bj(kerry),你的代码我试了,没有起到在结果集中查询的效果,是不是我哪个地方写的不对?
     void jButton7_actionPerformed(ActionEvent e)
        {
            //按基本条件在结果集中查询
            queryDataSet1.close();
            String sqlQuery=new String();        //这里为拼凑一查询语句字符串
            if(getCompareCharacter().equals("like") || getCompareCharacter().equals("not like") )
            {
                 sqlQuery="select * from 人才登记表 where "+jdbComboBox1.getSelectedItem()
                       +" "+getCompareCharacter()+" '%"+jQueryContext.getText()+"%'";
            }
            else
            {
                sqlQuery="select * from 人才登记表 where "+jdbComboBox1.getSelectedItem()
                       +" "+getCompareCharacter()+" "+":parameter";
             }        parameterRow1.setString("parameter",jQueryContext.getText());
            System.out.println(sqlQuery);
            queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, sqlQuery,
                     parameterRow1, true, Load.ALL));
            queryDataSet1.open();
            queryDataSet1.refilter();    }
      

  7.   

    我还想知道,网站上搜索,例如Google的搜索,在结果中查询是如何做的?
      

  8.   

    将第一次的DataSet得到的结果用
    DataRow[] firstDataSet保存起来
    当需要再使用的时候再用readRow.copyto()转到dataset中去