sql >> データベース >  >> RDS >> Sqlserver

Sqlサーバー2008は日付をdd/MM/yyyyからMM/dd/yyyyに強制します

    SQL Server はデータ レイヤーです そのため、利用可能なフォーマットはありません。日付は、0 =01/01/1900 の日付に相対的な 4 バイトの数値として格納されます。

    アプリケーション層 DateTime type は通常 ODBC Canonical です 基本的に、各コンポーネント (年、月、日、時、分、秒、ミリ秒) の整数プロパティを持つクラスのように見える表現。

    プレゼンテーション レイヤー 実際に目にするものであり、そこに関心を持つ必要があります。アプリケーションが ToShortDateString() を呼び出すとき メソッドでは、スレッドの現在のカルチャから表示形式を呼び出しています。これは、Region &Language のシステム設定を反映している場合と反映していない場合があります。 または 日付と時刻 .

    解決策の 1 つは、スレッドを現在のカルチャに設定することですが、これはその特定のカルチャの標準ディスプレイに移動するだけです

    Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-FR");
      

    解決策 2 は、カスタムの DateTime 書式文字列を使用することです

    lbldate.Text = DateTime.Today.ToString("dd/MM/yyyy");
      

    1. Hibernate (/JPA) サーバー側ページングと MS SQL Server

    2. Dockerで実行されているPostgresデータベースがハングし続ける

    3. T-SQLで日付をフォーマットする方法

    4. SQLSERVERのListAGG