注册 登录
编程论坛 ASP.NET技术论坛

关于sql语句

fsx 发布于 2008-05-07 10:21, 994 次点击
我用的是access数据库,开发语言是C#
可是sql语句的时间差老是不对或是出错。
下面是代码:
select datediff('yyyy',birthday," + System.DateTime.Now.ToString("yyyy-MM-dd") + ") as tt from photo
把上面的'yyyy'改为'y','year','yy'都不行。
当'yyyy'时得到的值好大,如birthday=1987-1-1时得出值为-82。
select * from photo where datediff('yyyy',birthday,getdate())=7时提示"getdate()"未定义。

请问该如何写才对。
5 回复
#2
fsx2008-05-08 15:06
自己顶一下。
一句话就是关于在c#中access的时间差问题。
#3
beniao2008-05-09 22:06
回复 1# 的帖子
System.DateTime.Now.ToString("yyyy-MM-dd")
有这个用法吗?
 你可以直接把数据查出来后在转换
  通过DataTime.Prase()
#4
snipen2008-05-10 10:52
要得到YYYY-MM-DD;用DateTime.Now.ToShortDateString();这样可以输出2008-05-09,
#5
fsx2008-05-14 09:32
还是不得哦。
select datediff('yyyy',birthday," + System.DateTime.Now.ToShortDateString() + ") as aa from photo
得到结果是-82,把'yyyy'改为'y'得到结果为-29789
是不是access数据库不能这样写呢?那对access数据库该如何写才对?谢谢了!
#6
kevintang2008-05-14 11:55
不会啊
1