Dzwebs.Net

撰写电脑技术杂文十余年

将SQL2005字符型字段转换成为日期时间型后比较大小的代码

Admin | 2010-9-10 9:15:35 | 被阅次数 | 13422

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  一、假设条件

  假设存在如下的表结构以及记录。

  ID       整型的
  MyDateTime  字符型的
  Content    字符型的

  尽管字段MyDateTime是字符型的,但是里面存储的内容完全是日期时间型的,比如:

  2008-1-1 15:30:21
  2009-1-1 15:30:21  
  2010-1-1 15:30:21  
  2011-1-1 15:30:21  
  ……

  二、应用需求

  给定一个日期时间YouDateTime变量,用于对比表中的MyDateTime字段,筛选出YouDateTime大于等于MyDateTime情况下的记录。

  现在的问题是,YouDateTime是日期时间型的,而字段MyDateTime则是字符型的。

  如果直接比较大于,当然会出错。如果将YouDateTime转换成为与MyDateTime一致的字符型,那么,势必造成比较上存在的误差。

  现在,最好的办法就是将MyDateTime字段在查询语句中,将其数据转换成为日期时间型的,这样,就可以和YouDateTime直接比较大小了。由于两者皆是日期时间型的,那么,在比较上,是非常准确的。

  三、转换语句

  根据一二的结论,现在,完整的经过本站验证的语句如下:

  select * from 表的名称 where @YouDateTime >= Cast(MyDateTime As DateTime )

  注意哦,如上的变量YouDateTime,在语句中,最好将其设置成为参数@YouDateTime,否则,容易出错误。

  最后,在语句中,给您的参数@YouDateTime 赋值即可,比如:

  YouDateTime=System.DateTime.Now();

  这样就可以保证万无一失了。当然,以上是使用Cast进行转换的。我们还可以使用Convert.ToDateTime(MyDateTime)来进行转换。转换的方法很多,但是,本站还是推荐您使用Cast进行转换。


该杂文来自: 数据库Sql,VFP,Access

上一篇:附加SQL数据库文件之ODBC SQLState:HY000错误解决

下一篇:多台SQL2005服务器同步更新数据的方法

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计