用如下的程式调用了SQL中的存储过程: Dim pthStr_master '因存储过程在 master 所以要与之联系 pthStr_master = " Provider=SQLOLEDB.1;server=192.168.0.26;uid=sa;pwd=3829650;database=master" CNN2.Open pthStr_master Set CNN_cmd.ActiveConnection = CNN2 '指示指定的 Command对象当前所属的 Connection对象。 CNN_cmd.CommandText = "pr_restore_db" '设置Command对象源。"doc_ProcName" CNN_cmd.CommandType = 4 'adCmdStoredProc 按理解就是存储过程了 通知提供者CommandText属性有什么,它可能包括Command对象的源类型。设置这个属性优化了该命令的执行。 CNN_cmd.Parameters(1) = "" CNN_cmd.Parameters(2) = "原数" '存储过程的参数,如果没有这个名字的数据库,会自创一个出来! CNN_cmd.Parameters(3) = "D:\自定义原数备份.BAK" CNN_cmd.Execute 以前用这个方式调存储过程,一直都没有问题,但最近做了一些外网可以访问数据库的方式,可就一直产生如下图的错误了
要说明一点:该存储过程,只在VBA中调用时才会出错! 而在查询分析器中执行是没有问题的 此问题困扰了N久,没能解决,恳请有此方面经验的同手作个指点. 我准备重装SQL2000,不知有否用?
[此贴子已经被作者于2007-7-9 9:49:57编辑过] |