我正在處理C#SQL。C#日期時間問題到SQL
我有一個datetime值"1/10/2016 12:00:00 AM"
爲如
Datetime dt="1/10/2016 12:00:00 AM"
當我過了這個值,SQL存儲過程作爲參數,把它改爲10 Jan 2016
我需要的結果作爲SQL 1 OCT 2016
。 Sql存儲過程參數數據類型是datetime。
很多謝謝
我正在處理C#SQL。C#日期時間問題到SQL
我有一個datetime值"1/10/2016 12:00:00 AM"
爲如
Datetime dt="1/10/2016 12:00:00 AM"
當我過了這個值,SQL存儲過程作爲參數,把它改爲10 Jan 2016
我需要的結果作爲SQL 1 OCT 2016
。 Sql存儲過程參數數據類型是datetime。
很多謝謝
使用參數將值傳遞給sql查詢。或者使用myDateTime.ToString("s");
此爲datetime值
「S」 - 標準的DATETIME格式
更改日期時間值,看看發生了什麼。如果仍然來到2016年1月10日,那麼存儲過程可能會改變爲默認值,即存儲值爲2016年1月10日。
這是一個很好的評論,但一個不好的答案。 –
我知道Zohar Peled。但根據計算器規則,如果我們低於50點聲望,我們就不能評論。所以對於這個限制我想作爲回答而不是評論。 –
那麼,你確定c#中的值實際上是1 OCT 2016
而不是10 Jan 2016
?
行:
Datetime dt = "1/10/2016 12:00:00 AM";
甚至不進行編譯。用於使C#和SQL Server之間DateTime
值
最佳實踐是使用DateTime
型或DateTime2
的SQL參數以及使所述DateTime
結構的實例。
如果你這樣做,那麼DateTime值保證正確傳遞。
你可以顯示代碼。如何將它存儲在'dt'中以及SQLParameter如何看起來像 –
聲音您將它作爲字符串傳遞,您應該將其作爲日期時間傳遞 – HoneyBadger
請查看此[問題](http://stackoverflow.com/問題/ 2191120 /淨日期時間到SQLDATETIME轉換)。 –