zoukankan      html  css  js  c++  java
  • 怎么把存储过程返回值结果集(表)放置在临时表中

    经常会遇见把存储过程的返回值放置到定义的临时表中,

    现在先创建一个存储过程:

    存储过程
     1 CREATE PROC [dbo].[usp_GetOrderInfo]
     2 @CustomerID nchar(5),
     3 @StartDate datetime,
     4 @EndDate datetime,
     5 @rowsAffect int output
     6 AS
     7 BEGIN
     8     SET NOCOUNT ON;
     9     DECLARE @err int;
    10     SELECT oo.CustomerID,oo.EmployeeID,oo.OrderDate,oo.ShipName FROM Orders oo where oo.OrderDate>=CONVERT(VARCHAR(10),@StartDate,120) 
    11     AND oo.OrderDate <=CONVERT(VARCHAR(10),@EndDate,120) AND oo.CustomerID =@CustomerID;
    12     SET @rowsAffect =@@ROWCOUNT;
    13     SET @err = @@ERROR;
    14     RETURN @err;
    15 END

    现在我们调用刚刚创建的存储过程:

    调用段
    1 DECLARE @CustomerID NCHAR(5);
    2 DECLARE @StartDate DATETIME;
    3 DECLARE @EndDate DATETIME;
    4 DECLARE @RowsAffect INT;
    5 DECLARE @a int;
    6 SET @CustomerID ='ALFKI';
    7 SET @StartDate='1900-01-01';
    8 SET @EndDate='2000-01-01';
    9 EXEC @a= GetOrderInfo @CustomerID,@StartDate,@EndDate,@RowsAffect OUTPUT;

    此时可以发现,SQL  窗口下方结果集有2个窗口,一个是执行此存储过程返回的结果集,一个是存储过程的输出参数和返回值;

    现在我们想把结果集放到临时表中:

    第一步创建临时表:

    创建临时表
    1 CREATE TABLE #customers
    2 (customerid nchar(5),
    3 EmployeeID int,
    4 OrderDate datetime,
    5 ShipName nvarchar(40)
    6 )

    调用段:

    调用段
     1 DECLARE @CustomerID NCHAR(5);
     2 DECLARE @StartDate DATETIME;
     3 DECLARE @EndDate DATETIME;
     4 DECLARE @RowsAffect INT;
     5 DECLARE @a int;
     6 SET @CustomerID ='ALFKI';
     7 SET @StartDate='1900-01-01';
     8 SET @EndDate='2000-01-01';
     9 INSERT INTO #customers(customerid,EmployeeID,OrderDate,ShipName)
    10 EXEC @a= GetOrderInfo @CustomerID,@StartDate,@EndDate,@RowsAffect OUTPUT;
    11 SELECT @rowsAffect ,@a

    就这样就ok啦!

  • 相关阅读:
    find指令使用手册
    IP封包协议头/TCP协议头/TCP3次握手/TCP4次挥手/UDP协议头/ICMP协议头/HTTP协议(请求报文和响应报文)/IP地址/子网掩码(划分子网)/路由概念/MAC封包格式
    Vmare虚拟机中的3种网络连接方式
    Windows10下Apache2.4配置Django
    网站配色
    js 图片轮播
    Window10下Apache2.4的安装和运行
    sqlite数据库转换为mysql数据库
    windows10 安装 mysql 5.6 教程
    win10 nginx + django +flup 配置
  • 原文地址:https://www.cnblogs.com/hfliyi/p/2497670.html
Copyright © 2011-2022 走看看