ホームページ >データベース >mysql チュートリアル >SQL Server の DATETIME データ型に DD-MM-YYYY 日付を安全に保存するにはどうすればよいですか?

SQL Server の DATETIME データ型に DD-MM-YYYY 日付を安全に保存するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-30 20:02:17314ブラウズ

How Can I Safely Store DD-MM-YYYY Dates in SQL Server's DATETIME Datatype?

SQL Server の日付形式の変換: DATETIME から DD-MM-YYYY

SQL Server で DD-MM の日付値を取得する場合-YYYY 形式の場合、ユーザーは多くの場合、同じ形式を維持しながらこれらの値を DATETIME データ型に格納する必要があります。この質問では、この要件に対する解決策を検討します。

提供されたクエリ SELECT CONVERT(VARCHAR(10), GETDATE(), 105) は、現在の日付を目的の DD-MM-YYYY 形式に正常に変換します。 VARCHAR データ型。ただし、この値を DATETIME データ型に格納するには、別のアプローチが必要です。

SQL Server では、DATETIME 値は 2 つの 4 バイト整数として格納されるため、本質的に書式設定されていません。特定の形式で日付を表示または取得するには、適切な形式識別子を使用して日付を VARCHAR データ型に変換する必要があります。

DATETIME データ型で目的の形式を実現するには、次の点を考慮してください。

  • 日付を挿入する前に、日付が安全にフォーマットされていることを確認してください。 DD-MM-YYYY は、一部の設定では MM-DD-YYYY として解釈される可能性があるため、普遍的に安全な形式ではありません。
  • yyyyMMdd や yyyy-MM-ddThh:mi:ss.mmm などの安全な形式を使用してください。 .
  • たとえば、dd/MM/yyyy に日付を挿入するには安全にフォーマットします:

    INSERT MyTable (DateField) VALUES ('01/10/2010') -- dd/MM/yyyy not safe
  • 代わりに安全なフォーマットを使用してください:

    INSERT MyTable (DateField) VALUES ('20101001') -- yyyyMMdd safe

DATETIME フィールドを選択すると、SSMS はフォーマットされた状態で表示されることに注意してください便宜上の値。実際の内部表現は 8 バイトの整数です。

以上がSQL Server の DATETIME データ型に DD-MM-YYYY 日付を安全に保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。