我有一个textbox,用来输入搜索关键词,然后从数据库里查询类似的关键词,进而交给百度进行搜索,然后将搜索结果返回到webBrowser1容器里显示。。
代码如下:请各位大侠看看哪里错了??谢谢
自我感觉是select 语句的问题。不知道怎么写才准备。。       string input = this.Keyword_txt.Text.Trim();  //取得用户输入的搜索关键词
                OleDbConnection OleConnection = new OleDbConnection ("Provider=SQLOLEDB ;server=my-PC;database=MyUrl;uid=sa;pwd=");
                OleConnection.Open();
                String sqlStr = "select * from MyUrl where keyword like %input%"; //查询语句
                OleDbDataAdapter myadap = new OleDbDataAdapter();
                myadap.SelectCommand = new OleDbCommand(sqlStr, OleConnection);
                DataSet myds = new DataSet();
                myadap.Fill(myds);
                for (int i = 0; i < myds.Tables[0].Rows.Count; i++)  //读取记录
                {
                    webBrowser1.Navigate("http://www.baidu.com/s?wd= " + myds.Tables[0].Rows[i]["Keyword"].ToString());
                }
                OleConnection.Close();
            }
            catch (Exception ex)
            {                throw ex;
            }

解决方案 »

  1.   

    String sqlStr = "select * from MyUrl where keyword like %input%"; //查询语句
    此处改为
    String sqlStr = "select * from MyUrl where keyword like '%"+input+"%'"; //查询语句
      

  2.   

    using(OleDbConnection OleConnection = new OleDbConnection (""))

    String sqlStr = "select * from MyUrl where keyword like '%"+this.Keyword_txt.Text+"%'"; 
    }
      

  3.   

     String sqlStr = "select * from MyUrl where keyword like %input%"; //查询语句
    写错了吧
     String sqlStr = "select * from MyUrl where keyword like '%"+input+"%'"; //查询语句
      

  4.   


    谢谢你的回复
    但是现在传给baidu 搜索框里的是数据库里keyword 字段里所以的参数,显然SQL 语句中where---like 没有起作用。要怎么修改呢???谢谢。。我是菜鸟。。呵呵
      

  5.   

    谢谢你的回复
    但是现在传给百度搜索框的是keyword 字段里所有的内容,显然SQL 语句中where---like 没有起作用。要怎么修改呢???谢谢
      

  6.   

    myds.Tables[0]符合记录可能多条,可直接在webbrower中打开baidu
    直接输入关键字搜索或赋值到文本框,执行按钮的click
      

  7.   

    你这个sql语句不就是根据文本框的关键字,查出 数据库中的内容
    没了where就是全部的内容了
    有了就是相应关键字的内容呀