asp 调用 存储过程的问题子选手(临时表的问题)

我想创建这样一个存储过程,  
里面有两个Select  语句,  
Select  T.a1,T.id  into  #A  from  mytable  T    
 
Select  C.id,#A.a1  from  mytable  C,#A    where  C.id  =  #A.id    
 
让  command执行时返回第二条语句的结果?  
-------------------Sql版--------------------------------------------  
http://expert.csdn.net/Expert/topic/2098/2098643.xml?temp=.4524652  
---------------------------------------------------------------  
 
SET  NOCOUNT  ON  
select  z1  into  #临时表1  from  t1  where  条件1  
select  z1  into  #临时表2  from  t1  where  条件2  
 
 
select  t1.id,(select  top1  z1  from  临时表1  where  关联  )  as  writer,  
                         (select  z1  from  临时表2  where  关联)  as  check  
from    t1    where  条件  
SET  NOCOUNT  OFF  
---------------------------------------------------------------  
 
调用数据库存储过程    
<  %Set  Dataconn  =  Server.CreateObject(''ADODB.Connection'')    
''建立连接对象    
Dataconn.Open  ''DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;PWD=;  
APP=Microsoft(R)  Developer  Studio;WSID=APP_SERVER;Regional=Yes''    
Set  cmdTemp  =  Server.CreateObject(''ADODB.Command'')    
''建立命令对象    
Set  rst  =  Server.CreateObject(''ADODB.Recordset'')    
''建立记录集对象    
cmdTemp.CommandText  =  ''dbo.pd_test''  ''存储过程名称    
cmdTemp.CommandType  =  4    
''命令类别为4,表示为存储过程    
Set  cmdTemp.ActiveConnection  =  Dataconn    
Set  tmpParam  =  cmdTemp.CreateParameter(''Return  value'',  3,  4,  4)    
cmdTemp.Parameters.Append  tmpParam    
Set  tmpParam  =  cmdTemp.CreateParameter(''@BeginDate'',  135,  1,  16,  riqi)    
 
''创建输入参数对象    
cmdTemp.Parameters.Append  tmpParam    
rst.Open  cmdTemp,  ,  1,  3    
''生成查询结果    
%  >    
这里调用的存储过程为pd_test,这种是ADO中提供的标准方法,但存在一个问题,  
就是当在存储过程中有两个以上的SELECT语句,但从逻辑上又不可能同时执行的时  
候,ADO会提示你存储过程中SELECT语句太多,解决方法是直接用ADO的  
CONNECTION对象的EXECUTE方法直接执行存储过程,如下:    
<  %    
Set  Dataconn  =  Server.CreateObject(''ADODB.Connection'')    
''建立连接对象    
Dataconn.Open  ''DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;PWD=;  
APP=Microsoft(R)  Developer  Studio;WSID=APP_SERVER;Regional=Yes''    
ss  =  ''EXECUTE  dbo.pd_test  ''  &  ''''''  &  riqi1  &  ''''''    
Set  rs  =  dataconn.Execute(ss)    
%  >
posted on 2005-03-13 00:54  轻松逍遥子  阅读(323)  评论(0)    收藏  举报