zoukankan      html  css  js  c++  java
  • .NET中调用存储过程(Output、Input)

    带输入输出参数的存储过程

    create procedure itemCodes

    @itemName1 varchar(50),

    @sizeName1 varchar(50),

    @itemCode varchar(5) output

    as

    select @itemCode=itemmap.ItemCode from itemmap inner join item on itemmap.ItemCode=item.ItemCode where(item.ItemName1=@itemName1 and item.SizeName1=@sizeName1)

    go

    程序清单1

       static void ExecuteStoredProcedure(string itemName1,string sizeName1)

            {

                string strConn = "server=localhost;uid=sa;pwd=sa;database=PAT";

                SqlConnection conn = new SqlConnection(strConn);

                conn.Open();

                SqlCommand cmd = new SqlCommand("getItemCode", conn);

                cmd.CommandType = CommandType.StoredProcedure;

                //输入参数

                SqlParameter param1 = new SqlParameter("@itemName1", SqlDbType.VarChar, 50);

                param1.Value = itemName1;

                cmd.Parameters.Add(param1);

                //输入参数

                SqlParameter param2 = new SqlParameter("@sizeName1", SqlDbType.VarChar, 50);

                param2.Value = sizeName1;

                cmd.Parameters.Add(param2);

                //输出参数

                SqlParameter param = new SqlParameter("@itemCode", SqlDbType.VarChar, 50);

                param.Direction = ParameterDirection.Output;

                cmd.Parameters.Add(param);

                //执行存储过程

                cmd.ExecuteNonQuery();

                conn.Close();

                //输出值

                Console.WriteLine(param.Value);

            }

    程序清单2

    static void ExecuteProcedure()

            {

                string strConn = "server=localhost;uid=sa;pwd=sa;database=PAT";

                SqlConnection conn = new SqlConnection(strConn);

                conn.Open();

                SqlCommand cmd = new SqlCommand("getItemCode", conn);

                cmd.CommandType = CommandType.StoredProcedure;

                SqlParameter[] parameters =

                {

                    new SqlParameter("@itemName1",SqlDbType.VarChar,50),

                    new SqlParameter("@sizeName1",SqlDbType.VarChar,50),

                    new SqlParameter("@itemCode",SqlDbType.VarChar,50)

                };

                parameters[0].Value = "Chai";

                parameters[1].Value = "500g";

                parameters[2].Direction = ParameterDirection.Output;

                foreach (var p in parameters)

                {

                    cmd.Parameters.Add(p);

                }

                cmd.ExecuteNonQuery();

                conn.Close();

                //输出值

                Console.WriteLine(parameters[2].Value);

            }

     


           快速评论通道--您对本文的宝贵意见:
           
    感谢您的鼓励和批评,它将是我进步的动力

  • 相关阅读:
    Permission denied (publickey). SSH用户名密码登录报错
    git工作流(Gitflow/gitlab代码权限管理)
    Spring多数据源配置(2)[PageHelper插件下应用bug修复]
    Spring多数据源配置
    基于Redis实现分布式锁
    .NetCore Autofac依赖注入获取注册后的实例、全局容器获取
    C++注入记事本升级版,给记事本弄爱心
    C++注入记事本
    WINAPI实现简易扫雷游戏
    .net 公共基础类
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/1764670.html
Copyright © 2011-2022 走看看