• 带输出参数的存储过程


    USE [Northwind]
    GO
    /****** 对象:  StoredProcedure [dbo].[Users_Insert]    脚本日期: 10/19/2009 22:26:16 ******/
    SET ANSI_NULLS OFF
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[Users_Insert]
    (

     @UUserId int    OUTPUT,

     @UUserName nvarchar (30)  ,

     @UPassWord nvarchar (50) 
    )
    AS    
        INSERT INTO [dbo].[Users]
         (
         [U_UserName]
         ,[U_PassWord]
         )
        VALUES
         (
         @UUserName
         ,@UPassWord
         )
        
        -- Get the identity value
        SET @UUserId = SCOPE_IDENTITY()

    ============================================================

    declare @id int;
    exec Users_Insert @id output, 'aaa' ,'aaa'
    select
     @id;       

    ===========================================================

    using (SqlCommand cmd=new SqlCommand("proc_userinfo",con))
    14        {
    15          //什么作用不记得了只记得调用存储过程该语句不能少
    16          cmd.CommandType = CommandType.StoredProcedure;
    17          //添加存储过程输入输出参数类型及输入参数值
    18          cmd.Parameters.Add("@username", SqlDbType.VarChar, 50).Value=username;
    19          cmd.Parameters.Add("@pwd", SqlDbType.VarChar, 50).Value=pwd;
    20          cmd.Parameters.Add("@grade", SqlDbType.VarChar, 50).Value=grade;
    21          cmd.Parameters.Add("@count", SqlDbType.Int);
    22          cmd.Parameters["@username"].DbType = DbType.String;
    23          //指定参数类型是输入参数还是输出参数
    24          cmd.Parameters["@username"].Direction = ParameterDirection.Input;
    25          cmd.Parameters["@pwd"].DbType = DbType.String;
    26          //指定参数类型是输入参数还是输出参数
    27          cmd.Parameters["@pwd"].Direction = ParameterDirection.Input;
    28          cmd.Parameters["@grade"].DbType = DbType.String;
    29          //指定参数类型是输入参数还是输出参数
    30          cmd.Parameters["@grade"].Direction = ParameterDirection.Input;
    31          cmd.Parameters["@count"].DbType = DbType.Int32;
    32          //指定参数类型是输入参数还是输出参数
    33          cmd.Parameters["@count"].Direction = ParameterDirection.Output;
    34          //执行存储过程 此处类似于查询语句
    35          cmd.ExecuteScalar();
    36          //接受执行存储过程后的返回值
    37          n = (int)cmd.Parameters["@count"].Value;


           
       

  • 相关阅读:
    力扣452题、435题、56题(用最少量的箭引爆气球,无重叠区间,合并区间)
    力扣860题(柠檬水找零)
    力扣135题、406题(分发糖果、根据身高重建队列)
    力扣134题(加油站)
    力扣1005题(K次取反后最大化的数组和)
    力扣122题、714题(买卖股票)
    力扣53题(最大子序和)
    力扣376题(摆动序列)
    力扣455题(分发饼干)
    力扣51题(n皇后)
  • 原文地址:https://www.cnblogs.com/kingwangzhen/p/1586228.html
Copyright © 2020-2023  润新知