C#Datetimeを同等のSQL DATE型に変換して、パラメータ化せずにWHERE句で単純な等式を実行するにはどうすればよいですか?
質問する
2280 次
4 に答える
4
単純にISO文字列に変換します。
日時
YourDateTime.ToString("yyyy-MM-ddTHH\:mm\:ss.fffffffzzz");
日付のみ
YourDateTime.ToString("yyyy-MM-dd");
ただし、T-SQLクエリが異なるたびに新しいSQL実行プランが生成されるため、パラメータ化されたクエリを使用することを強くお勧めします。
パラメータを使用する場合、1つのプランのみを取得します。これにより、パフォーマンスが向上します。
詳しくは
于 2012-04-19T12:07:16.397 に答える
2
yourDateTime.toString("yyyy-MM-dd HH:mm:ss");
しかし、パラメータを使用する方が良いでしょう
于 2012-04-19T12:07:51.327 に答える
1
構造について話している場合は、次の 型SqlDateTime
の値を受け入れるコンストラクターを使用できます。DateTime
MSDNを参照してください:SqlDateTimeコンストラクター(DateTime)
于 2012-04-19T12:08:29.327 に答える
1
他の答えはあなたの質問を本当に理解していなかったと思います(または私は理解していませんでした)
DateTime
私が集めたものから、C#からSQLDate
タイプ(SQL日時ではありません!)に変換する方法を尋ねています。他のすべての回答には、回答に時間が含まれていました。
それが本当なら、あなたはそれについて全く心配する必要はありません。SQLDate
は.NETと完全に互換性があるDateTime
ため、プロシージャに渡すだけで時間部分が削除され、日付が正しく渡されます。
于 2012-04-19T12:19:37.623 に答える