2013-06-25 85 views
-2

這是我想要的「2013-06-25 18:46:54.687」傳遞給sql server的日期時間格式。 如何轉換爲C#?在C中用毫秒轉換DateTime格式#

DateTime LastUpdateTime=Convert.toDateTime(LastUpdateTime); 
    //2013-06-25 18:46:54.687 with 3 index of millisecond 
sc.Parameters.Add("@LastUpdateTime", SqlDbType.DateTime).Value = LastUpdateTime; 

回答

0

如果你的數據庫的查詢參數字符串,使用以下格式:

LastUpdateTime.ToString("yyyy-MM-dd HH:mm:ss.fff")

否則,這將是更好的發送日期時間爲原來的對象, 讓SQL服務器做所有的轉換。

2

您在SQL中使用了錯誤的數據類型。

datetime2可以被視爲具有較大的默認小數精度和可選的用戶指定精度的現有日期時間類型的擴展。


C#完全按照你想要的方式格式化了毫秒。 在一個實例:

DateTime date2 = new DateTime(2008, 1, 1, 0, 30, 45, 125); 
Console.WriteLine("Date: {0:o}", 
        date2);   
// Displays the following output to the console: 
//  Date: 2008-01-01T00:30:45.1250000 

Why is SQL Server losing a millisecond?DateTime2 vs DateTime in SQL Server

這些都是大問題好的答案,BTW。