视图与存储过程从本质上来说无法相互替代。有些可以替代只是特例,比如create view v
as select * from tbcreate proc p
as select * from tbview是按一定预定义好的过滤条件所得到的数据结果集的展示。proc是一组待执行语句的批语句组合。

解决方案 »

  1.   

    create view v
    as select * from openrowset('sqloledb','服务器名或ip';'用户名';'密码','exec 库名.所有者.过程名 参数') x不推荐这样用。 根具你的具体情况,应该会有另一种方案。 为什么非要用视图呢
      

  2.   

    因为我做ASP网页,我想调用视图里面的数据,存储过程的调用不了啊.能否帮我看看还有没有什么方法可以让这个存储过程变为视图的.
      

  3.   

    将这个存储过程做为视图的方法我在5楼已经写了。asp中为何不能调用存储过程? 是你不会吧
      

  4.   

    我还是不明白你的意思是什么。但是:
    存储过程是可以返回记录集的。cmd.parameters.add ....
    set rs=cmd.execute
      

  5.   

    我觉得可能是楼主不会用ado调用存储过程返回记录集给recordset.
      

  6.   

    可以。你不清楚的话,可以看ado手册。
    command,connection的execute方法均可返回记录集。只是有的记录集是不可用的,比如insert 语句造成"多少行受影响“之类的提示。
    这种可以在存储过程中使用set nocount on 之类的语句屏蔽之。或是利用recordset的nextrecordset方法跳过.
      

  7.   

    asp调用带参数的存储过程。你去google一搜一堆,我就不写了。
      

  8.   


    参考下:
    http://topic.csdn.net/t/20040430/18/3025947.html