一个OA系统,前台VB,后台SQL2000,一个库中包含若干表。 
在SQL企业管理器里看有32个表(不包括系统表)将整个库导出为ACCESS之后,打开一看33个表,里面多了一张表,而且是重要的,记录了OA文档名称与发文部门的表。但在企业管理器中却看不到该表! 
我想拓展开发OA功能,这个表里的数据很有用,但用ASP程序连接SQL读不到这个表(读其他可见的表就正常),怎么办?! 补充说明:我不想改SQL数据库的任何设置,只想用ASP把这个隐藏的表读出来

解决方案 »

  1.   


    如果是SA,不可能看不到表或者数据的.SA是管理员的帐号,如果用这个帐号都不能看到相关数据,那就真的奇怪了.
      

  2.   

    这个隐藏的表应该是所有表的系统表,就是32张表的系统表,导入到access中可以看到,是因为sql server 和access数据库结构不同的缘故`
      

  3.   

    打到原因了,原来这个隐藏的表就是数据库的一个视图!
    但是用ASP无法读取其内容,在服务器新建了个有全部权限的用户,然后用ASP连接也还是读不出数据
    我是按读一般表的方法读的,不知道对不?
      

  4.   

    又找到原因了!
    查询语句的问题!!!
    select fid,fwz,ftitle,fwdwmc,ftype,fsrq from tsFile where instr(fwz,'@督办结果反馈单')>0 and ftype='外收文' order by fsrq desc
    这个语句在access库中正常,在SQL中查不到数据,所以才找不到那个隐藏表!只要把Where子句instr(fwz,'@督办结果反馈单')>0去掉则正常!
    但这是为什么呢?!
      

  5.   

    SQL 中没有 instr 这个函数吧!!
      

  6.   

    select fid,fwz,ftitle,fwdwmc,ftype,fsrq from tsFile 
    where charindex('督办结果反馈单',fwz)>0  and ftype='外收文' 
    order by fsrq desc 
      

  7.   

    哈哈,该结帖了!
    关于此问题及解决方式汇总一下:
    1、在SQL中的隐藏表就是数据库的一个视图!导出ACCESS后因被执行了查询结果而生成了该表,所以在ACCESS 中看得到,而在SQL的表中找不到。此问题guanlianwei 兄弟的答案最正确。(12分)
    2、ASP查询中WHERE子句的“instr(fwz,'@督办结果反馈单')>0”无法使用,呵呵,不好意思低级错误,我以为在ASP里用ASP的函数应该没问题,经验证,即使在ASP中,只要使用查询语句,仍要用SQL的函数,呵呵,所以scmail81 答案正确!(8分)
    可以的就是我第一次在这里发帖,分给少了,见谅!