动态执行sql查询:鉴于图形方式不够灵活,这里使用动态代码重新做上次的内容。
界面上不再需要OleDbConnection和OleDbDataAdapter。只要有一个datagrid。
添加一个按钮。在按钮的点击事件中增加如下代码(myConnString 可以从上次的图形界面的OleDbConnection属性得到,删除部分无用的信息,保留数据源、用户、密码等主要信息):

   string myConnString ="Jet OLEDB:Database Password=;Data Source=\"C:\\db1.mdb\";
                                           Password=;Provider=\"Microsoft.Jet.OLEDB.4.0\";User ID=Admin";

   string querySql ="select * from test where name <> 'aa'"; 
   //新建一个OleDbConnection,一个OleDbDataAdapter
   OleDbConnection myConnection = new OleDbConnection(myConnString);
   OleDbDataAdapter adapter = new OleDbDataAdapter(querySql,myConnection);
   adapter.SelectCommand = new OleDbCommand(querySql, myConnection);
   DataSet ds = new DataSet();
   this.DataGrid1.DataSource=ds;
   adapter.Fill(ds);
   this.DataGrid1.DataBind();
  点击按钮之后,就可以看到按照你的Sql得到的检索结果
 
OleDbCommand 还支持在查询中使用动态参数。上面的例子经过修改如下
  string myConnString ="Jet OLEDB:Database Password=;Data Source=\"C:\\db1.mdb\";Password=;
                                            Provider=\"Microsoft.Jet.OLEDB.4.0\";User ID=Admin";
   string querySql ="select * from test where name  = @name";
   //新建一个OleDbConnection,一个OleDbDataAdapter
   OleDbConnection myConnection = new OleDbConnection(myConnString);
   OleDbDataAdapter adapter = new OleDbDataAdapter(querySql,myConnection);
   OleDbCommand myCommand  = new OleDbCommand(querySql, myConnection);
   
   
OleDbParameter myParm = new OleDbParameter("@name",OleDbType.VarChar,50);
   myParm.Value="Liu";
   myCommand.Parameters.Add(myParm );
   adapter.SelectCommand =myCommand;
  DataSet ds = new DataSet();
   this.DataGrid1.DataSource=ds;
   adapter.Fill(ds,"test");
   this.DataGrid1.DataBind();
  这样点击按钮之后就可以检索到名字是“Liu”的数据