SQL的OPENROWSET在程序中不能使用
我在SQL Serve2000里写了一个存储过程。主要功能是实现SQL   Server2000里的表导入到Access里。用以下的SQL代码实现:insert   into      OPENROWSET( 'Microsoft.Jet.OLEDB.4.0 ', 'd:\nmzrxzsp.mdb '; 'admin '; ' ', 'select   *   from   dataoutexecl ')select   *   from   zr.dataoutexecl   。我在查询分析器里能执行,并能导入到access.但是我在程序里用delphi或VC调用存储程时,提示“Microsoft.Jet.OLEDB.4.0的特殊访问被拒绝,请在服务器上运行”为什么啊?
------解决方案--------------------zr是你建的用户吗?用sa用户导试试看
------解决方案--------------------还是zr是数据库名?那就应该是 
 insert into  OPENROWSET( 'Microsoft.Jet.OLEDB.4.0 ', 'd:\nmzrxzsp.mdb '; 'admin '; ' ', 'select * from dataoutexecl ')select * from zr..dataoutexecl   
 你确定在查询分析器可以?
------解决方案--------------------可能是安全级别不够被server block了   
 你可以通过sp_configure 来配置   
 通过  sp_configure  'show advanced options ', 1 --开启高级设置   
 2005通过  Ad Hoc Distributed Queries 试试 如果是0就改成1 如果是1就改成0   
 2000开启 romote access 来看看
------解决方案--------------------  应该是权限的问题,好好查查.