首页 > 代码库 > Sql Server存储过程

Sql Server存储过程

好久没用存储过程了,突然一用发现好多东西忘了,就写了两个。方便查阅。例子都非常简单,方便结构的查看,参数的使用。

 

SELECT  *FROM    Production.Product;--1 创建一个返回结果集的存储过程DROP PROCEDURE dbo.PR_Product;CREATE PROCEDURE PR_ProductAS     BEGIN         SELECT  *        FROM    Production.Product;    END;         --执行存储过程    EXEC dbo.PR_Product;--2 创建一个要求输入一个参数的存储过程    CREATE PROCEDURE PR_SelectProduct @color VARCHAR(20)--定义一个输入参数    AS         BEGIN            SELECT  *            FROM    Production.Product            WHERE   Color = @color;--要求Color列与输入参数相同        END;                --执行存储过程        EXEC dbo.PR_SelectProduct @color = Black -- varchar(20)--3 创建一个要求输入两个参数的存储过程        CREATE PROCEDURE PR_SelectProductTwoParameters            @safetyStockLevel INT ,            @recorderPoint INT        AS             BEGIN                SELECT  *                FROM    Production.Product                WHERE   SafetyStockLevel = @safetyStockLevel                        AND ReorderPoint > @recorderPoint            END;            --执行存储过程            EXEC dbo.PR_SelectProductTwoParameters @safetyStockLevel = 1000, -- int                @recorderPoint = 100 -- int                        EXEC dbo.PR_SelectProductTwoParameters @safetyStockLevel = 800, -- int                @recorderPoint = 100 -- int            --4 创建一个有返回值的存储过程            CREATE PROCEDURE PR_GetProductID                @makeFlag INT ,                @color VARCHAR(10) ,                @productID INT OUTPUT            AS                 BEGIN                    SELECT  @productID = ProductID                    FROM    Production.Product                    WHERE   MakeFlag = @makeFlag                            AND Color = @color                END;                        --执行存储过程                DECLARE @productID INT                EXEC dbo.PR_GetProductID @makeFlag = 0, @color = Black, -- varchar(10)                    @productID = @productID OUTPUT -- int--声明一个变量用来接收执行存储过程后的返回值                SELECT  @productID AS ProductID;--5 创建一个有默认输入参数的存储过程                                               CREATE PROCEDURE PR_SelectProductName @name VARCHAR(10) = %                AS                     BEGIN                        SELECT  *                        FROM    Production.Product                        WHERE   Name LIKE @name;                    END;                                        --执行存储过程                    EXEC dbo.PR_SelectProductName ;--默认参数                    EXEC dbo.PR_SelectProductName @name = B% -- varchar(10) 手动输入参数

Sql Server存储过程