2017-02-24 19 views
0

テーブルを照会しようとしていますが、実行するとエラーが発生します。「Sdate = @ dateとStaffid = @ mobile」を追加するとエラーが発生します。 tはここc#アクセスクエリデータ型の不一致

private void button1_Click(object sender, EventArgs e) 
{ 
    getsum(); 
} 



public void getsum() 
{ 
    string query = @"select SUM(SQuantity) AS Total FROM Sales where [email protected] AND [email protected]"; 
    using (var conn = new System.Data.OleDb.OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data source=|DataDirectory|\\crepeDB.accdb;")) 
      using (var cmd = new System.Data.OleDb.OleDbCommand(query, conn)) 
      { 
      cmd.Parameters.Add("@mobile", System.Data.OleDb.OleDbType.VarChar).Value = '1'; 
      cmd.Parameters.Add("@date", System.Data.OleDb.OleDbType.VarChar).Value = dateTimePicker1.Value.Date; 

      conn.Open(); 

      using (var rdr = cmd.ExecuteReader()) 
      { 
       if (rdr.Read()) 
       { 
        textBox1.Text = rdr["Total"].ToString(); 
       } 
       rdr.Close(); 
      } 
     } 
} 

ホープ誰も私には他のデータ型を試してみてください。この

答えて

1

を修正することができますコードで、それが正常に動作条件を与える:

cmd.Parameters.Add("@mobile", System.Data.OleDb.OleDbType.Integer).Value = 1; 
cmd.Parameters.Add("@date", System.Data.OleDb.OleDbType.DBDate).Value = dateTimePicker1.Value.Date; 
+0

をしようとしたが、そのエラーませんが、結果なし –

+0

@Gordも聞きます。 – Gustav