ホームページ > データベース > mysql チュートリアル > C# DateTime を SQL Server の「yyyy-MM-dd HH:mm:ss」形式に正しく変換する方法

C# DateTime を SQL Server の「yyyy-MM-dd HH:mm:ss」形式に正しく変換する方法

Patricia Arquette
リリース: 2024-12-31 03:16:13
オリジナル
532 人が閲覧しました

How to Correctly Convert a C# DateTime to a SQL Server

C# での DateTime 形式から SQL 形式への変換

予想される SQL Server の日付形式 ("yyyy-MM) と一致するように C# DateTime 変数をフォーマットする-dd HH:mm:ss") は難しい場合があります。コードの詳細な説明と実用的な解決策は次のとおりです。

元のコード:

DateTime myDateTime = DateTime.Now;
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd HH:mm:ss");
ログイン後にコピー

このコードの問題は、myDateTime.Date に日付のみが含まれていることです。 myDateTime には時間も含まれます。希望の形式で日付と時刻の両方を含む文字列を取得するには、myDateTime を直接使用する必要があります。

連結文字列を使用した改訂コード:

string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " + myDateTime.TimeOfDay.ToString("HH:mm:ss");
ログイン後にコピー

これコードは、DateTime オブジェクトを日付と時刻のコンポーネントに分割し、それらを文字列に連結します。ただし、myDateTime.TimeOfDay は TimeSpan 型であり、書式文字列を受け取る ToString メソッドがないため、このバージョンはコンパイル時エラーで失敗します。

これを修正するには、ToString() を使用できます。日付と時刻のコンポーネントを分割するのではなく、DateTime を直接メソッドで取得します:

修正解決策:

DateTime myDateTime = DateTime.Now;
string sqlFormattedDate = myDateTime.ToString("yyyy-MM-dd HH:mm:ss.fff");
ログイン後にコピー

ToString("yyyy-MM-dd HH:mm:ss.fff") 形式文字列は、ミリ秒精度を含む目的の SQL Server 日付形式を指定します。このコードは、エラーなしで正しくフォーマットされた文字列を生成するはずです。

以上がC# DateTime を SQL Server の「yyyy-MM-dd HH:mm:ss」形式に正しく変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート