• NET中调用存储过程(Output、Input)


    NET中调用存储过程(Output、Input)

    .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 = "";

                 parameters[2].Direction = ParameterDirection.Output;

                 foreach (var p in parameters)

                 {

                     cmd.Parameters.Add(p);

                 }

                 cmd.ExecuteNonQuery();

                 conn.Close();

                 //输出值

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

             }

  • 相关阅读:
    软件开发流程概要(笔记)
    (转)HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等
    (转)敏捷开发简介
    (转)从零开始学习ASP.NET MVC 1.0 (一) 开天辟地入门篇
    WinForm二三事(二)异步操作
    TSQL变量操作详解
    C#委托和多线程文章收藏
    psad, fwknop, 和fwsnort等著名开源安全软件的开发者谈Linux防火墙
    最通俗易懂的面向对象著作
    找到一本适合自己的SQL Server 2008入门书
  • 原文地址:https://www.cnblogs.com/mili3/p/3183484.html
Copyright © 2020-2023  润新知