データベースの日付形式は、Management Studio またはその他のクライアント ツールで表示される方法では保存されません (ロケールまたはその他の設定により、地域の形式が適用される場合があります)。
日付/時刻の値をデータベースに保存する場合、データ型はDATE
、DATETIME
、などであり、やSMALLDATETIME
のような文字列型ではありません。日付を文字列として保存すると、自動検証 (ジャンク防止)、日付/時刻の計算、効率的な日付範囲クエリなど、あらゆる種類の機能が失われます。または6月1日?そのような文字列をどのようにソートすると思いますか?VARCHAR
NVARCHAR
01/06/2013
VB.NET フォームは日時パラメーターを渡す必要があり、形式はその一部であってはなりません。日付/時刻の値は、ユーザーに表示する必要がある場合を除き、決して文字列として扱われるべきではありません。その場合はプレゼンテーション層で または を使用する必要があります.Format()
。.ToString()
絶対に文字列を渡す必要がある場合は、次の日時のように、完全に明確な形式であることを確認してください。
YYYYMMDD hh:mm:ss.nnn
YYYY-MM-DDThh:mm.ss.nnn
言語、日付形式、およびその他の設定によっては、他の形式が正しく解釈されない場合があります。ただし、文字列ではなく日付/時刻パラメーターとして日付/時刻値を渡す必要があるため、これについて心配する必要はありません。