Foxtable(狐表)用户栏目专家坐堂 → [求助]关于一个日期表达式的错误


  共有8561人关注过本帖树形打印复制链接

主题:[求助]关于一个日期表达式的错误

帅哥哟,离线,有人找我吗?
夕然
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
[求助]关于一个日期表达式的错误  发帖心情 Post By:2013/1/9 10:55:00 [只看该作者]

我在查询表的条件设置如下
[过期日期] <= #" & Date.Today & "#

提示

.NET Framework 版本:2.0.50727.3053
Foxtable 版本:2012.11.29.1
错误所在事件:
详细错误信息:
System.Data.OleDb.OleDbException: 日期的语法错误 在查询表达式 '[过期日期] <= #" & Date.Today & "#' 中。
   at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
   at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
   at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
   at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
   at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
   at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
   at Foxtable.O0l11O0ll0lOO1000Ol0.O00O1lOO()


但是,我的那个过期日期确实是日期型的

不过 ,他的值是这样获得的

e.DataRow("过期日期") = e.DataRow("登记时间").AddDays(365)

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/9 10:57:00 [只看该作者]

 "过期日期 <= #" & Date.Today & "#"
[此贴子已经被作者于2013-1-9 10:57:20编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
夕然
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/1/9 11:03:00 [只看该作者]

你的代码也不行啊

.NET Framework 版本:2.0.50727.3053
Foxtable 版本:2012.11.29.1
错误所在事件:
详细错误信息:
System.Data.OleDb.OleDbException: 日期的语法错误 在查询表达式 '过期日期 <= #" & Date.Today & "#' 中。
   at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
   at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
   at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
   at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
   at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
   at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
   at Foxtable.O0l11O0ll0lOO1000Ol0.O00O1lOO()


并且我认为  把列名用 [] 括起来是对的

比如

[_Identify] Is Null


麻烦您再帮助看看


 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/9 12:02:00 [只看该作者]

 你的是不是sqlserver数据源?试试单引号吧。不行就具体一下你的问题。

 "过期日期 <= '" & Date.Today & "'"

 回到顶部
帅哥哟,离线,有人找我吗?
夕然
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/1/9 12:11:00 [只看该作者]

我的是内部表

 回到顶部
帅哥哟,离线,有人找我吗?
夕然
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/1/9 12:13:00 [只看该作者]

我复制出来了
Select  {会员表}.* From {会员表} Where [过期日期] <= #" & Date.Today & "#
这个提示语法错误,为什么呢

.NET Framework 版本:2.0.50727.3053
Foxtable 版本:2012.11.29.1
错误所在事件:
详细错误信息:
System.Data.OleDb.OleDbException: 日期的语法错误 在查询表达式 '[过期日期] <= #" & Date.Today & "#' 中。
[此贴子已经被作者于2013-1-9 12:13:52编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/9 13:01:00 [只看该作者]

 不可能这样的,远程帮你看一下,联系客服QQ

 回到顶部
帅哥哟,离线,有人找我吗?
夕然
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/1/9 13:37:00 [只看该作者]

这点一定要标记
谢谢林老师
查询表的条件表达式 不能使用  变量

 回到顶部