2009-09-28 29 views
0

我需要在數據庫中的BIGINT字段中添加當前日期時間...,然後從只顯示日期格式爲:10月1日,2009年如何添加當前日期時間BIGINT場

我正在考慮將值存儲在字符串變量中,然後將其轉換爲int ... String s = DateTime.Now.ToString();

我不知道下一步該怎麼做.. 請幫助

回答

4

你可以只保存蜱爲您BIGINT值的數量。蜱表示接受一個長的自1月1日起經過的毫秒1/10,000的數量,0001

DateTime.Now.Ticks; 

這總是可以通過使用構造被轉換回爲DateTime:

DateTime storedTime = new DateTime(ticksFromDatabase); 

要格式化您的日期,只需使用任何標準date format strings即可。一個自定義的格式字符串實際上可能工作得更好,我只是仔細閱讀了它們,它看起來並不像你想要的格式那樣內置一個字符串。這應該工作:

date1.ToString("MMMM d, yyyy", CultureInfo.CreateSpecificCulture("en-US")) 
+0

我將它存儲爲 long s = DateTime.Now.Ticks; 但我使用SQL數據源在GridView中顯示它。 我應該在選擇查詢中寫什麼...... ??? 「我的SQL查詢是...」 「SELECT MachineGroups.MachineGroupID,MachineGroups.MachineGroupName,MachineGroups.MachineGroupDesc,MachineGroups.TimeAdded,MachineGroups.CanBeDeleted,COUNT(Machines.MachineName)AS'PC的數量'FROM MACHINEGroups FULL OUTER JOIN Machines ON Machines.MachineGroupID = MachineGroups.MachineGroupID GROUP BY MachineGroups.MachineGroupID,MachineGroups.MachineGroupName,MachineGroups.MachineGroupDesc,MachineGroups.TimeAdded – user175084 2009-09-28 02:54:38

+0

您需要掛鉤RowDataBound事件並重新格式化日期。是否有任何理由不能使用一個SQL日期時間列?這將是最容易做的事情,因爲你可以使用SQL select語句格式化它,並很容易地將它轉移到C#中的DateTime對象。 – womp 2009-09-28 03:04:46

+0

沒有我不能使用datetime因爲整個公司代碼是在bigint .. :( 我知道它本來對我來說太容易了。 但我嚴重沒有得到如何使用select語句在gridview中顯示日期... 請幫助我的人... – user175084 2009-09-28 04:12:57

1

我會使用智能日期鍵,因爲它更容易發現,使用SQL:

20090927235000 
yyyyMMddhhmmss 

這樣,如果你想找到任何發生在一個給定的一天,你可以這樣做:

select * from tbl where datecol between 20090927000000 and 20090927240000 

從而使數據驗證很多容易,即使您使用的是ORM。

相關問題