zoukankan      html  css  js  c++  java
  • SQL-创建存储过程

    /*
        日期:2021-3-6
        人员:LDH
        说明:SQL-演示存储过程
    */
    
    USE TEST;
    GO
    
    CREATE TABLE People
    (
        Id INT IDENTITY(1, 1) NOT NULL PRIMARY KEY,
        Name NVARCHAR(20) NOT NULL,
        Lastname NVARCHAR(10) NOT NULL,
        Address NVARCHAR(200) NOT NULL
    );
    
    INSERT INTO People
    (
        Name,
        Lastname,
        Address
    )
    VALUES
    (N'大大', N'', '中国上海'),
    (N'小小', N'', '中国江苏');
    
    
    SELECT Id,
           Name,
           Lastname,
           Address
    FROM People;
    
    -- ===================================================================
    -- 创建存储过程(无参数)
    -- ===================================================================
    GO
    
    
    CREATE PROCEDURE proc_GetPersonName
    AS
    BEGIN
        SELECT Id,
               Name,
               Lastname,
               Address
        FROM People;
    END;
    
    
    -- 执行存储过程
    EXEC proc_GetPersonName;
    GO
    
    
    -- ===================================================================
    -- 创建存储过程(有输入参数)
    -- ===================================================================
    
    
    CREATE PROCEDURE proc_GetPersonNameById @Id int
    AS
    BEGIN
        SELECT Id,
               Name,
               Lastname,
               Address
        FROM People
        WHERE Id = @Id;
    END;
    
    -- 执行存储过程
    EXEC proc_GetPersonNameById 2;
    GO
    
    -- ===================================================================
    -- 创建存储过程(有输出参数)
    -- ===================================================================
    
    
    CREATE PROCEDURE proc_GetPersonFullNameAndAddressById
    (
        @Id int,
        @FullName nvarchar(50) OUTPUT,
        @Address nvarchar(200) OUTPUT
    )
    AS
    BEGIN
        SELECT @FullName = Lastname + Name,
               @Address = Address
        FROM People
        WHERE Id = @Id;
    END;
    
    -- 执行存储过程
    USE [TEST];
    GO
    
    DECLARE @return_value INT,
            @FullName NVARCHAR(50),
            @Address NVARCHAR(200);
    
    EXEC @return_value = [dbo].[proc_GetPersonFullNameAndAddressById] @Id = 2, -- 输入参数赋值
                                                                      @FullName = @FullName OUTPUT,
                                                                      @Address = @Address OUTPUT;
    
    SELECT @FullName AS N'@FullName',
           @Address AS N'@Address';
    
    SELECT 'Return Value' = @return_value;
    
    GO
    踏实做一个为人民服务的搬运工!
  • 相关阅读:
    软件实施工程师是一个什么样的工作?他的具体工作内容是什么?发展前景怎样?
    做金融(基金、证券)方面的软件实施工程师有没有发展前途?职业发展空间如何。
    做软件实施工程师的一点建议
    系统实施工程师主要工作职则
    软件实施工程师
    UE编辑器编译和运行java设置
    猜数字
    猜数字
    Problem G
    Problem G
  • 原文地址:https://www.cnblogs.com/LifeDecidesHappiness/p/14490879.html
Copyright © 2011-2022 走看看