你加我QQ我告诉你:271786483 看漏了一贴 SWAYWOOD 发表于 2013-1-9 20:42 static/image/common/back.gif
自己搞定了,现在把我的经验分享给大家,相信大家都会遇到这种情况,只是你们暂时没有上WIN7X64位。
主要问 ...
XP系统,装有access 2010 ODBC中有*.mdb,*.accdb
同样是
(vlax-put-property RecordSetObject
"cursorType"
ADOConstant-adOpenKeyset
)代码出错,显示错误: ActiveX 服务器返回错误: 无效的参数数目。
如果使用下面的代码,直接没有结果,使用注释掉的那句,还能返回,
(setq *ConnectionObject*
(ADO_ConnectToDB
(strcat
;;"Provider=MSDASQL;Driver={Microsoft Access Driver (*.mdb)};DBQ="
"Provider=MSDASQL;Driver={Microsoft Access Driver (*.accdb)};DBQ="
dbfile
)
"admin"
"123456"
)
)
如果往下运行到(setq result (ADO_DoSQL *ConnectionObject* SQLStatement))这句就显示出错了,也是错误: ActiveX 服务器返回错误: 无效的参数数目。
然后往ADO_DoSQL函数中查找,到下面这句就错了。
(vlax-put-property RecordSetObject
"cursorType"
ADOConstant-adOpenKeyset
)代码出错,显示错误: ActiveX 服务器返回错误: 无效的参数数目。
请指点一下如何才能正常访问access
(setq dbfile "d:\\tt.MDB")
(setq conn(vlax-create-object "ADODB.Connection"))
(setq connstring (strcat "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" dbfile))
(vlax-invoke-method conn "open" connstring "" "" -1)
连接并打开MDB个人数据库 Gu_xl 发表于 2012-11-28 11:44 static/image/common/back.gif
测试数据库:
(vlax-put-property
RecordSetObject
"cursorType"
ADOConstant-adOpenKeyset
)
(vlax-put-property
RecordSetObject
"LockType"
ADOConstant-adLockOptimistic
)
这两句显示的是一样的:错误: ActiveX 服务器返回错误: 无效的参数数目。
请问如何解决?
因为ADOConstant-adOpenKeyset和ADOConstant-adLockOptimistic在Vlisp编程器中未变色,相当于用户变量,但也没有见给它们赋值的句子,所以就出错了,请问如何更改? Gu_xl 发表于 2012-11-28 11:44 static/image/common/back.gif
测试数据库:
(vlax-put-property
RecordSetObject
"LockType"
nil
)
; 错误: ActiveX 服务器返回错误: 无效的参数数目。
_$ (vlax-put-property
RecordSetObject
"LockType"
""
)
; 错误: 此类型的 LISP 值不能强制转换成 VARIANT:""
照上面的测试,显示那个值还不能是Nil和“” SWAYWOOD 发表于 2013-1-9 20:42
自己搞定了,现在把我的经验分享给大家,相信大家都会遇到这种情况,只是你们暂时没有上WIN7X64位。
主要问 ...
我也遇到这样的问题,比你惨的是,我们公司根本不让装64位的Access驱动 革天明 发表于 2014-12-20 16:54
(vlax-put-property
RecordSetObject
"LockType"
此问题我已经找到了解决办法了 dcl1214 发表于 2019-8-31 22:18
此问题我已经找到了解决办法了
久远的问题了,现在不玩lisp了
页:
1
[2]