2014-02-21 2 views
0

У меня есть этот доступ db, что у меня есть ddl для имени состояния и ddl для года. У меня есть gridview, что я хотел бы передать значение раскрывающегося списка состояния в where where. Очевидно, если бы я мог использовать sql с указанными параметрами, я бы это сделал, но это то, за что я застрял, и не знаю точно, как правильно его отформатировать.Параметры OleDB

выпадающий список - это имя ddlStates. В параметрах я попытался

mycommand.Parameters.Add("@ddlStates") 

здесь набор данных

 public DataSet GetData() 
    { 
     DataSet ds; 
     using (OleDbConnection myConnString = new OleDbConnection()) 
     { 
      myConnString.ConnectionString = connString; 
      using (OleDbCommand myCommand = new OleDbCommand()) 
      { 
       myCommand.CommandText = "select * from tblTest where location = ?"; 
       myCommand.Parameters.Add(); 
       myCommand.Connection = myConnString; 



       using (OleDbDataAdapter da = new OleDbDataAdapter()) 
       { 
        da.SelectCommand = myCommand; 
        ds = new DataSet(); 
        da.Fill(ds, "Grades"); 
       } 
      } 
      return ds; 
     } 
    }//ends get data dataset 

ответ

0
myCommand.Parameters.AddWithKey("location", this.ddlStates.SelectedValue); 

Это предполагает, что тип данных location столбца текстуально. Если это числовое значение или что-то еще, тогда сначала конвертируйте SelectedValue в соответствующий тип данных.

2

1.you необходимо открыть подключение

2.you можно добавить параметр следующим

public DataSet GetData() 
{ 
    DataSet ds; 
    using (OleDbConnection conn = new OleDbConnection(connString)) 
    { 
     string query= "select * from tblTest where location = ?";    
     using (OleDbCommand myCommand = new OleDbCommand(query, conn)) 
     { 

      myCommand.Parameters.AddWithValue("@ddlStates", <your value>); 
      conn.Open(); 

      using (OleDbDataAdapter da = new OleDbDataAdapter(myCommand, conn)) 
      { 
       ds = new DataSet(); 
       da.Fill(ds, "Grades"); 
       return ds; 
      } 
     } 

    } 
}