SQL无法检查语法错误问题

solariver 2010-10-12 03:02:59
在 informix 或者Sybase中使用如下查询方式,在出现语法错误时,只是提示“不支持所需的属性”,不会提示哪里语法出错
Set Rst = New ADODB.Recordset
Rst.Open strSql, Cn, adOpenStatic


但是使用如下查询方式:

Set Rst = Cn.Execute(strSql)


就可以,但是矛盾的是上面的查询方式貌似不支持RecorderCount属性


是不是哪里设置错了?
...全文
211 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
solariver 2010-10-12
  • 打赏
  • 举报
回复
谢谢vbman2003,搞定了
vbman2003 2010-10-12
  • 打赏
  • 举报
回复
vb是通过数据库引擎访问数据库的,是有不少数据库引擎不能完整的支持ADO所有功能
Set Rst = Cn.Execute(strSql) 这个方式方法下,如果没有指定,cn默认是服务器游标,而RecorderCount需要客户端游标,所以先请尝试设置cn.CursorLocation = adUseClient
神马都能聊 2010-10-12
  • 打赏
  • 举报
回复


添加两个过程
Public Sub Init_Connection(cn As ADODB.Connection)
cn.CursorLocation = 3
End Sub

Public Sub Rs_Active_Connection(rs As ADODB.Recordset)

rs.CursorLocation = 3
rs.CursorType = 3

Set rs.ActiveConnection = cn
End Sub
'执行SQL语句前,加上这两句
call init_connection
call rs_active_connection(rst)
'执行SQL语句
rst.open strsql

chinaboyzyq 2010-10-12
  • 打赏
  • 举报
回复
Set Rst = Cn.Execute(strSql)
Num = Rst.RecordCount
lxq19851204 2010-10-12
  • 打赏
  • 举报
回复
没用过informix 或者Sybase的飘过......
bancxc 2010-10-12
  • 打赏
  • 举报
回复
估计是 adOpenStatic这些参数的问题》

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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