2016-10-14 7 views
0

以下は日付を表示するために機能しますが、[datetime列の]データベースに書き込むとき、デフォルトの形式に変換されているようです。日付をdd-mon-yyyy形式でSQL Serverに格納する方法は?

REPLACE(CONVERT(VARCHAR(11),CONVERT(DATETIME,DATE_FIELD),106),' ','-') 
+0

なぜ形式を保存しようとしていますか?アプリケーションで表示するときに書式を設定する –

答えて

4

データベース内の日付/時刻の値は、バイナリ形式で格納されます。それらは文字列として格納されません。これはそれらを保存する正しい方法です。

特定の形式でデータをフェッチする場合は、検索時に式を使用します。または、計算列を追加することができます。

alter table t 
    add date_field_ddmonyyyy as (REPLACE(CONVERT(VARCHAR(11), CONVERT(DATETIME,DATE_FIELD), 106), ' ', '-')); 
関連する問題