2017-05-29 9 views
0

私は 'MM/dd/yyyy hh:mm:ss'のようにSQL Serverに日時を挿入したいと考えています。datetimeを 'dd/MM/yyyy'のような形式で挿入するにはどうすればよいですか?

一般的に、これらのdatetimeをSQLに挿入するために、以下のクエリを作成しました。

insert into tablename values(convert(date,'10/02/2012',110)) 

それはこの"2012-10-02"のように挿入したが、それは次のように挿入し、なぜ私は知らないのですか?

これはSQL Serverの新機能です。

このように保存するには、'02-10-2016'を米国の形式で保存しますか?日付列を想定し

+7

日付は常に内部数値で格納されます。 dd/MM/yyyyへの書式設定は、それが提示されたときに行われます。データベースのデフォルトの日付表​​示形式を変更するだけで済みます。 https://docs.microsoft.com/en-us/sql/t-sql/statements/set-dateformat-transact-sql –

+0

データベースのデフォルトの日付表​​示を変更するにはどうすればよいですか? –

+0

私は以前の投稿でMicrosoftのドキュメントへのリンクを追加しました。 –

答えて

1

使用この

は、さまざまな形式でdate_columnを表示しながら、あなたがconvertを使用することができ、date_columnです。さまざまな形式の添付資料を読んでください。

SELECT CONVERT(VARCHAR(10), date_column, 110) AS [MM-DD-YYYY] from tablename; 

EDIT:以前に質問を誤読していたため、イタリア語から米国への日付書式が修正されました。

http://www.sql-server-helper.com/sql-server-2008/sql-server-2008-date-format.aspx

+0

データベースに任意のフォーマットをハードコードする理由はありません。クライアントがどのフォーマットを使用するかを決める方が簡単です。多くの場合、デスクトップクライアントが表示用にユーザーのロケールを使用する場合や、Webページで同じ目的でブラウザの受け入れられた言語を使用する場合など、自動で行われます –

+0

私は、読んだときに日付を変換する必要があります書き込み。 – Gerfried

+0

@PanagiotisKanavos - OPは、特定の形式で日付を表示することを希望していたと言いました。 '[MM-DD-YYYY]'は単なる列別名です。 – Utsav

関連する問題