VB中调用sql的奇怪问题.大家帮帮忙/

jackyhyoung 2005-06-05 01:02:49
不知为何
我在access中的查询窗口中能够正常运行
如下语句
SELECT TableNo AS tn,sum(BetMark)-sum(Winmark) AS earn,sum(BetMark) as bm ,sum(WinMark) as wm,sum(clsmark) as cm,sum(openmark) AS om , fix(sum(Winmark)/iif(sum(BetMark)=0,1,sum(betmark))*100) AS perc, 0 AS mo From betinfo where TableNo not in('801','802','803','804','805') and up_date>=#2005-06-03 21:16:19 # group by Betinfo.TableNo UNION ALL select 'Sum',sum(BetMark)-sum(winmark),sum(BetMark),sum(winmark) ,sum(clsmark) ,sum(openmark),fix(sum(Winmark)/iif(sum(BetMark)=0,1,sum(betmark))*100) AS perc, 0 AS mo from betinfo where TableNo not in('801','802','803','804','805') and up_date>=#2005-06-03 21:16:19#

可我在VB中调用:
sql = "SELECT TableNo AS tn,sum(BetMark)-sum(Winmark) AS earn,sum(BetMark) as bm ,sum(WinMark) as wm,sum(clsmark) as cm,sum(openmark) AS om" & _
" , fix(sum(Winmark)/iif(sum(BetMark)=0,1,sum(betmark))*100) AS perc, 0 AS mo" & _
" From betinfo " & _
" where TableNo not in('801','802','803','804','805') and up_date>=#" & CStr(Trim(strdate)) & "#" & _
" group by Betinfo.TableNo" & _
" UNION ALL select 'Sum',sum(BetMark)-sum(winmark),sum(BetMark),sum(winmark) ,sum(clsmark) ,sum(openmark),fix(sum(Winmark)/iif(sum(BetMark)=0,1,sum(betmark))*100) AS perc, 0 AS mo" & _
" from betinfo where TableNo not in('801','802','803','804','805') and up_date>=#" & CStr(Trim(strdate)) & "#"

trs.Open sql, Cnn, adOpenDynamic, adLockReadOnly

这时会出错说是:
[Microsoft][ODBC Microsoft Access Driver] 日期的语法错误 在查询表达式 'TableNo not in('801','802','803','804','805') and up_date>=#2005-06-04 21:16:19' 中。
这是什么原因啊..

帮帮忙啊...各位大虾!1
...全文
91 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
DawnPine 2005-06-08
  • 打赏
  • 举报
回复
恭喜恭喜
chenyu5188 2005-06-07
  • 打赏
  • 举报
回复
呵呵~~~
UP
jackyhyoung 2005-06-07
  • 打赏
  • 举报
回复
解决了.是多了一個回車符...

謝謝大家
jackyhyoung 2005-06-07
  • 打赏
  • 举报
回复
SELECT TableNo AS tn,sum(BetMark)-sum(Winmark) AS earn,sum(BetMark) as bm ,sum(WinMark) as wm,sum(clsmark) as cm,sum(openmark) AS om , fix(sum(Winmark)/iif(sum(BetMark)=0,1,sum(betmark))*100) AS perc, 0 AS mo From betinfo where TableNo not in('801','802','803','804','805') and up_date>=#2005-06-03 21:16:19 # group by Betinfo.TableNo UNION ALL select 'Sum',sum(BetMark)-sum(winmark),sum(BetMark),sum(winmark) ,sum(clsmark) ,sum(openmark),fix(sum(Winmark)/iif(sum(BetMark)=0,1,sum(betmark))*100) AS perc, 0 AS mo from betinfo where TableNo not in('801','802','803','804','805') and up_date>=#2005-06-03 21:16:19#
正常...但是我在VB調用後就不正常了..是什麽原因啊..

說說啊..
help
csqiu 2005-06-07
  • 打赏
  • 举报
回复
不能用"#",去掉。
linwenfeng 2005-06-06
  • 打赏
  • 举报
回复
试试这样的
#" + Trim(lin1) + "#
深渊的水影 2005-06-05
  • 打赏
  • 举报
回复
up_date>=#2005-06-04 21:16:19' ???

是这样的嘛??好像是错了。。呵呵。。
饮水需思源 2005-06-05
  • 打赏
  • 举报
回复
'这样试试:
and up_date>=#" & formatstrdate,"YYYY-MM-DD") & "#"

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧