2010-08-16 136 views
0

我有04/08/2010格式的出生日期(DD/MM/YYYY)和格式爲 7/14/2010 12:00:00 AM(MM/DD/YYYY),我想檢查我的當前日期從存儲數據庫的日期爲所有日期大於等於當前日期,所以我怎麼能第一次改變日期的甲酸,然後可以從數據庫使用一些查詢得到適當的結果日期格式轉換

回答

3

SQL服務器根本不會以字符串格式存儲日期(假設您的列是真正的DATETIME列或類似的東西)......並且您不應該以字符串格式發送查詢。

取而代之,使用參數化查詢,您可以使用DateTimeDateTimeOffset來填充值 - 這樣,在與數據庫交談時就不必擔心字符串格式。以適當的格式解析輸入到您的應用的字符串(例如DateTime.TryParseExact),然後您不需要考慮格式。

如果你的數據庫真的使用NVARCHAR或類似的存儲日期,你應該看看解決這個問題。

0

你是如何從SQL得到追溯到?

如果您使用的是像NHibernate這樣的ORM工具,您應該能夠將數據作爲DateTime對象進行檢索,然後您可以在代碼中對其進行比較。

如果你不使用NHibernate或LINQ(或某些其他實現),並使用ADO,你應該能夠在您檢索它轉換爲DateTime,然後可以比較有什麼用DateTime.Parse()DateTime.TryParse()你的代碼。