确定日期是不是在 sqlCE 中的 2 个日期内
Posted
技术标签:
【中文标题】确定日期是不是在 sqlCE 中的 2 个日期内【英文标题】:Determine if a date is within 2 dates in sqlCE确定日期是否在 sqlCE 中的 2 个日期内 【发布时间】:2011-06-20 06:40:05 【问题描述】:我有一个 sqlCE 字段 A,键入文本,其中包含以下格式的日期字符串:
31/12/2011 11:29:09
另外,我有一个 sqlCE 字段 B,键入文本,它包含这种格式的日期字符串:
04/04/2011 10:12:01
我电脑上今天的日期是:19/01/09 21:54:28
如何检查今天的日期是否介于日期 A 和日期 B 之间,是否具有任何地区或日期类型?
提前致谢。
【问题讨论】:
【参考方案1】:如果您的数据库字段是text
类型,那么您首先需要将文本值解析 为(真正的)日期时间值。为此推荐的函数是DateTime.ParseExact
。示例:
string myString = ...; // the value you read from the database
DateTime myDateTime = DateTime.ParseExact(myString, "dd/MM/yyyy HH:mm:ss",
CultureInfo.InvariantCulture);
关于您在问题中提到的“具有任何区域或日期类型”:这就是 ParseExact 的第二个和第三个参数的含义:在那里,您可以指定文本值的格式数据库有。 (有关详细信息,请参阅 the documentation of DateTime.ParseExact。)请注意,您确实需要指定格式:否则,函数将无法判断 03/04/2010
是三月四日还是三日四月。
之后,您可以使用常规日期比较操作(例如if (datetime1 <= datetime2) ...
)来检查日期是否在所需的时间范围内。
【讨论】:
以上是关于确定日期是不是在 sqlCE 中的 2 个日期内的主要内容,如果未能解决你的问题,请参考以下文章