Hi,
 
I worte these codes and its works very well when I use MSAccess Database. Curiosly doesnt works usin sql database. When I make filter its gives this message: Incorrect syntax near '?'
 
Please any help:
 
- conn.Open();  
 - SqlCommand cmd = conn.CreateCommand();  
 - cmd.CommandType = CommandType.Text;  
 -   
 - cmd.CommandText = "select * from livro1 where (data between ? and ?)";  
 - var param1 = new SqlParameter("@StartDate", SqlDbType.Date);  
 - var param2 = new SqlParameter("@EndDate", SqlDbType.Date);  
 -   
 - param1.Value = dtInicialLivro1.Value.Date;  
 - param2.Value = dtFinalLivro1.Value.Date;  
 -   
 - if (dtFinalLivro1.Value <= dtInicialLivro1.Value)  
 - {  
 - cmd.Parameters.Add(param1);  
 - cmd.Parameters.Add(param2);  
 - }  
 - else  
 - {  
 - cmd.Parameters.Add(param2);  
 - cmd.Parameters.Add(param1);  
 - }  
 -   
 - cmd.ExecuteNonQuery();  
 - DataTable dt = new DataTable();  
 - SqlDataAdapter da = new SqlDataAdapter(cmd);  
 - da.Fill(dt);  
 - conn.Close();  
 - dgvLivro1.DataSource = dt;