sql 中的getdate()在VC中不能用吗
我想做一个自动提醒收费的功能的程序.
在contractinfo表中有个 收款日期 字段和 收款周期 字段
我的SQL这样子写的.
sSQL.Format( "select * from ContractInfo where DATEDIFF(Day,到款日期,GETDATE())> 30 and 收款周期= '每月一次 ' \
union select * from ContractInfo where DATEDIFF(Day,到款日期,GETDATE())> 120 and 收款周期= '每月二次 ' \
union select * from ContractInfo where DATEDIFF(Day,到款日期,GETDATE())> 365 and 收款周期= '技术支持 ' ");
但是ADO居然不认识GETDATE()
[Microsoft][ODBC Microsoft Access Driver] Undefined function 'GETDATE ' in expression.
这样怎么办啊~先谢谢各位拉~
[解决办法]
无语了……
我说的是NOW(),你用的是DATE()。
[解决办法]
access里第一个参数需加引号: DATEDIFF( 'd ',到款日期,DATE())
sqlserver里,不需要引号
[解决办法]
有关日期函数的差异
VBA 函数 Transact-SQL
标量函数
Date(x) CONVERT(DATETIME,CONVERT(varchar,GETDATE(x)))
Dateadd( " <Access datepart> ",x,y) DATEADD( <SQL Server datepart> , x, y)
Datediff( " <Access datepart> ",x,y) DATEDIFF( <SQL Server datepart> , x, y)
Datepart( " <Access datepart> ", x) DATEPART( <SQL Server datepart> , x)
Day(x) DATEPART(dd,x)
Hour(x) DATEPART(hh,x)
Minute(x) DATEPART(mi,x)
Month(x) DATEPART(mm,x)
Now(x) GETDATE(x)
Second(x) DATEPART(ss,x)
Weekday(x) DATEPART(dw,x)
Year(x) DATEPART(yy,x)