2014-10-11 86 views
0

我正在使用Node中的邊緣模塊從SQL SERVER R2讀取數據。在SQL Server Management Studio中,日期格式爲2014-10-05 22:24:00,但是當我在JavaScript對象中獲取它時,它的格式爲05/10/2014 22:24:00 PM。爲什麼會發生這種情況,我怎樣才能以相同的格式讀取日期?從SQL中讀取數據時日期格式發生變化

回答

0

從數據的角度來看,兩個值都是相同的;只是格式不同而已;如果未指定選定的格式,不同的程序將使用不同的默認值。在任何一個日期需要採用特定格式的時候,該日期將需要應用格式化命令作爲顯示更改,而不改變基礎值。如果你只是想讓它們看起來一樣,只需要改變一個,這樣一個格式就可以匹配另一個格式。你可以改變SQL Server的日期爲 「DD/MM/YYYY HH SS:MM」 的格式使用這個腳本(see this link):

DECLARE @Date DATETIME = '2014-10-05 22:24:00' 
SELECT CONVERT(VARCHAR(25), @Date, 103) + ' ' + CONVERT(VARCHAR(25), @Date, 108) AS FormattedDate 

這並不會對它的結束的AM/PM - 我不確定爲什麼會出現在JavaScript日期中,因爲時間是以24小時格式給出的。如果需要使用此你可以添加:

DECLARE @Date DATETIME = '2014-10-05 22:24:00' 
SELECT CONVERT(VARCHAR(26), @Date, 103) + ' ' + CONVERT(VARCHAR(26), @Date, 108) + ' ' + RIGHT(CONVERT(VARCHAR(26),@DATE,109),2) AS FormattedDate 

我會承認它是所有現在纔剛剛開始看起來很笨拙,但 - 這可能是更容易這兩個日期格式的東西,是簡單的顯示。 this question的答案有幫助。最簡單的解決方案是避免需要日期格式化,直到最後一分鐘,只有您的結果數據需要播放。

希望有幫助。

相關問題