当前位置:编程学习 > C#/ASP.NET >>

关于DateTime类型的讨论

DateTime类型在SQL与C#中都是存在的,在与数据库的交互中,这种数据类型也是最麻烦的一种,

但相信经过我下面的解释后大家会对这种数据类型了如指掌,下面我们就来玩转DateTime:

 
首先我们讲SQL中的DateTime,
用SQL语句向数据库中添加一条DateTime类型的记录我们有两种写法:
一种是硬写,一种是利用SQL中的日期函数。

 
1. 硬写
这种写法不常用,但是你会通过这种写法了解一些东西:
insert into CustomerInfo(birthday) values(1985-09-16)
上面的语句我们向用户表中插入了一条生日记录,这里将日期用单引号括了起来,
有人会说不括也是可以的,没错,但是写上面的年月日,不加括号是可以的,
但是想将生日设置为:1985-09-16 12:16:31,精确到秒时,不加括号就会出错,
所以为了便于记忆,也为了防止出错,建议大家在用硬写这种方式时加上括号。

 
2. 用SQL中的日期函数
SQL中的日期函数有好几个,这里不做详细的解释,我将在下一篇文章中为大家详细说说。
最常用的日期函数就是GetDate(),这个函数的作用是调用当前时间,它的格式类似于2009-09-10 14:51:32.107
最后那三位数是格林威治时间的格式,不用管它,
次函数用在SQL语句中的写法是:
update dbo.CustomerInfo set birthday = GetDate() where customerInfoId = 13

 
接下来我们再来了解一下C#中的DateTime,
C#中的DateTime是一个对象,它拥有许多自己的属性和方法,呵,这又是要专门用一篇文章来解释的东西,
我们现在只需了解DateTime拥有这三个方法即可:
ToString()、ToShortDateString()、ToShortTimeString()。
这三个方法是DateTime身上最常用的东西,
ToString()获得的东西类似于2009-09-10 14:51:32;
ToShortDateString()则类似于2009-09-10;
ToShortTimeString()的类似于14:51:32。

 
当我们连接数据库,用C#语句将SQL语句传给SQL时要注意一个小细节,这也是我犯过的错误,
很微小的错误,曾让我郁闷半个下午,
\
 
注意,这上面sqlStr的第三行,填充birthday的位置是没有单引号的!
这点一定要注意注意。
    
补充:软件开发 , C# ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,