2016-08-31 8 views
0

私はDateTimeフィールドに従っていくつかのレコードを抽出する簡単なクエリを持っています。 私は理由を説明することができませんが、いくつかの日付では動作しません(結果はnullです)。 最後の日(10日以上)に動作している間は、最初の日は動作しないようです。それは#09/09/2016#と連携しながら、上記の例ではAccess Table and SQL QueryアクセスはDATETIMEクエリで失敗します

は#04/09/2016#では動作しません!

日付の形式によっては違いますか?

答えて

0

私はどのようにプログラムで(私はC#を使用しています)正しい日の形式を渡すことができますか?

...

それは、このday.toString( "MM/DD/YYYY")のように日付をフォーマットする作品。

あなたがC#を使用している場合、あなたはないは(、動的SQLを使用して)クエリを構築するための文字列として日付をフォーマットする必要があります。あなたはこのようパラメータ化クエリを使用する必要があります。

var day = new DateTime(2016, 9, 4); 
using (var cmd = new OleDbCommand("SELECT * FROM Prenotazioni WHERE DataArrivo=?", conn)) 
{ 
    cmd.Parameters.AddWithValue("?", day); 
    using (OleDbDataReader rdr = cmd.ExecuteReader()) 
    { 
     while (rdr.Read()) 
     { 
      // do stuff 
     } 
    } 
} 
+0

ありがとう、私もこのソリューションを試してみます。 –

1

SQLビューでは、デザインビューでも#dd/mm/yyyy#であっても、日付は常に#mm/dd/yyyy#と書き込まれます。あなたのSQLは4月9日を要求しています。それはあなたの意図ですか?

+0

ありませんが、私は9月4日を要求してみてください。だから私はどのように私は正しい日の形式をプログラムで渡すことができます(私はC#を使用しています)? –

+0

解決済みです!このday.toString( "MM/dd/yyyy")のように日付の書式設定を行います。ありがとう、 –

関連する問題