2016-05-08 1 views
0

データベースからの日付と時刻の値に基づいてクエリを作成する必要があります。私のSQLではdatetimepickerからの値の取得は、C#のSQL Serverでは機能しません

(私はここでの唯一の関連部分を示すよ)私が持っている:

WHERE 
    [QueuePerformanceByPeriodStats].[MidnightStartDate] >= "+ dateTimePicker1.Value.ToString()+ "08:00:00.000" 
    + " AND [QueuePerformanceByPeriodStats].[MidnightStartDate] <= "+ dateTimePicker1.Value.ToString() + "23:59:00.000" 

そして、私はこのSQL文に値を送信するためのDateTimePickerを使用しています:

private void Form1_Load(object sender, EventArgs e) 
{ 
    dateTimePicker1.Value = DateTime.Now; 
} 

それは動作しません!何か案は ?

+0

設定しようとしているときにdatetimepickerの値は何ですか? – Berkay

+0

SQLデータベースの日付形式は、yyy-MM-dd 08:00:00.000です。 –

答えて

0

文字列連結を使用して値をクエリに配置しないでください。 SQLParametersを使用する必要があります(さまざまな理由から、SQLインジェクション攻撃など、常にこれを実行する必要があります)。

何らかの理由で不可能な場合は、値を一重引用符で囲み、SQL Serverが日付の正しい値を確実に取得できるようにyyyy-MM-ddという形式にする必要があります。おそらく、時間値の前にスペースが必要です。

関連する問題