是不是SQL语法出错了?

xing_bu_tou 2007-12-19 11:53:38

当程序运行到这段代码时,就出现[microsoft][ODBC SQL server driver][sql server]第一行:')'附近有语法错误。
adodc1.refresh 失败

borrowlimit 是借书时限,它的值已经在bas公共模块里通过连接数据库的表获得

public borrowlimit as integer
Adodc1.RecordSource = "select count(*)as num from 借还信息 _
where 读者编号='" & Trim(TxtReaderNo.Text) & "'" _
& "and 还书日期 is null and 续借日期 is null" _
& "and datediff(day,借书日期,getdate())>" BorrowLimit 'datediff返回时间差
Adodc1.Refresh

不知是上面那段代码的语法错误,还是连接数据库错误。
谢谢有经验的高手们看下!

...全文
122 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
饮水需思源 2007-12-19
  • 打赏
  • 举报
回复
好像右括号是中文的,改成英文的再试试
liangCK 2007-12-19
  • 打赏
  • 举报
回复
没细看..
只看到一个中文的)
xing_bu_tou 2007-12-19
  • 打赏
  • 举报
回复
真的是and前面没加空格,非常感谢各位!
clear_zero 2007-12-19
  • 打赏
  • 举报
回复
你把 and 前面都加空格
" and ....
  • 打赏
  • 举报
回复
~~
NFDSOFT 2007-12-19
  • 打赏
  • 举报
回复
& ""
连接的时候不要把关键字弄到一起了,加空格

& " and 还书日期 is null and 续借日期 is null" _
& " and "

自己仔细点就行了,这也贴出来:(
Tiger_Zhao 2007-12-19
  • 打赏
  • 举报
回复
自己将SQL命令用Debug.Print打印出来,到查询分析器中执行一下就知道错误了。
xing_bu_tou 2007-12-19
  • 打赏
  • 举报
回复
改了右括号后,再运行,又出现改了右括号后,在运行,又出现[microsoft][ODBC SQL server driver][sql server]第一行:'nulland'附近有语法错误。

是"and 还书日期 is null and 续借日期 is null" & "and datediff(day,借书日期,getdate())> " & borrowlimit 这句出错吗?
xing_bu_tou 2007-12-19
  • 打赏
  • 举报
回复
改了右括号后,在运行,又出现[microsoft][ODBC SQL server driver][sql server]第一行:'nulland'附近有语法错误。
是"and 还书日期 is null and 续借日期 is null"这句出错吗?

7,762

社区成员

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

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