http://expert.csdn.net/Expert/topic/3016/3016902.xml?temp=.9715082
问题提出:ghosthjt (天煞孤星)
解答:Yang_(扬帆破浪), j9988(j9988)
如果能够方便的得到存储过程结果集的表结构。那存储过程的使用就方便了很多了。比如:
insert into #tmp exec sp_who
要执行这一句,前提必须知道sp_who的结果集的表结构。
这样的语句又不能运行:select * into #tmp from exec sp_who
解答:
1:
select * into #z from OPENROWSET(
'SQLOLEDB',
'SERVER=server;uid=sa;pwd=sapwd;Database=master','exec sp_who') as a
2: 如果存储过程中用到临时表,要用set fmtonly off
select * into #z from OPENROWSET(
'SQLOLEDB',
'SERVER=server;uid=sa;pwd=sapwd;Database=master','SET FMTONLY OFF; exec 存储过程名') as a
                
        问题提出:ghosthjt (天煞孤星)
解答:Yang_(扬帆破浪), j9988(j9988)
如果能够方便的得到存储过程结果集的表结构。那存储过程的使用就方便了很多了。比如:
insert into #tmp exec sp_who
要执行这一句,前提必须知道sp_who的结果集的表结构。
这样的语句又不能运行:select * into #tmp from exec sp_who
解答:
1:
select * into #z from OPENROWSET(
'SQLOLEDB',
'SERVER=server;uid=sa;pwd=sapwd;Database=master','exec sp_who') as a
2: 如果存储过程中用到临时表,要用set fmtonly off
select * into #z from OPENROWSET(
'SQLOLEDB',
'SERVER=server;uid=sa;pwd=sapwd;Database=master','SET FMTONLY OFF; exec 存储过程名') as a
                  
                  
                  
                  
                            
博客围绕方便获取存储过程结果集的表结构展开,指出若能方便获取,存储过程使用会更便捷,如执行 insert into #tmp exec sp_who 需知道结果集表结构,还给出两种获取方法,一是用 OPENROWSET 执行 sp_who,二是存储过程用临时表时加 set fmtonly off。
          
      
          
                
                
                
                
              
                
                
                
                
                
              
                
                
              
            
                  
					990
					
被折叠的  条评论
		 为什么被折叠?
		 
		 
		
    
  
    
  
            


            