【求解决办法】OLE DB 提供程序 'SQLOLEDB' 不包含表,怎么设置访问权限
我在SQL查询分析器里:   
 select   *   from   openrowset( 'sqloledb ', '192.168.0.20 '; 
  'sa '; '123456 ',WESTDATA.dbo.CUSTOMER)   
 出现以下信息:     
 服务器:   消息   7314,级别   16,状态   1,行   1   
 OLE   DB   提供程序    'sqloledb '   不包含表    ' "WESTDATA ". "dbo ". "CUSTOMER " '。该表可能不存在,或当前用户没有使用该表的权限。 
 OLE   DB   错误跟踪[Non-interface   error:      OLE   DB   provider   does   not   contain   the   table:   ProviderName= 'sqloledb ',   TableName= ' "WESTDATA ". "dbo ". "CUSTOMER " ']。     
 同样代码,我访问另一个数据库:   
 select   *   from   openrowset( 'sqloledb ', '192.168.0.20 '; 
  'sa '; '123456 ',MKDB.dbo.USER)   
 正常列出数据     
 因此,是SQLOLEDB的权限问题,请问该如何解决呢??   谢谢了
------解决方案--------------------那就去数据库里设置你登录用的帐号的权限啊
------解决方案--------------------没有SA不能访问的表 
 只会是表不存在 
------解决方案--------------------如楼上所说.查看表是否存在....
------解决方案--------------------查看表是否存在
------解决方案--------------------很可能WESTDATA.dbo.CUSTOMER表不是sa创建的,你在表前加上创建者的名字看看,我以前也遇到过类似的问题。
------解决方案--------------------去查一下该数据库.安全性下面 
 的选项
------解决方案--------------------WESTDATA.dbo.CUSTOMER  可能这个表不存在!   
 试一下 
 exec sp_help  'WESTDATA.dbo.CUSTOMER '
------解决方案--------------------关注~~~~
------解决方案--------------------关注
------解决方案--------------------可能原因:   
 1、不存在WESTDATA.dbo.CUSTOMER这个表,或表名字写错,或数据库名字写错 
 2、表的所有者不是dbo     
 如果没有以上问题,到 '192.168.0.20 '本机执行以下语句试试:   
 select * from WESTDATA.dbo.CUSTOMER
------解决方案--------------------建议楼主把楼上提出的可能发生错误的原因测试一下,然后把测试结果贴出来,这样可以继续解决问题