zoukankan      html  css  js  c++  java
  • ASP.NET调用存储过程并接收存储过程返回值

    ASP.NET调用存储过程并接收存储过程返回值  

    2010-08-02 11:26:17|  分类: C#|字号 订阅

     
     
     
    2010年02月27日 星期六 23:52
    假设表结构
    Create Table Table_1
    (
    tid int identity(1,1),
    number int
    )
    1.调用无参无返回值的存储过程

    假设存储过程如下
    Create PROC proc_1
    AS
    Insert Table_1(number) Values(100)
    GO


    调用方法
    public static void exec_proc_1()
    {
    SqlCommand cmd = new SqlCommand("proc_1", con);//proc_1为存储过程名,con为已经建立好的连接
    cmd.CommandType = CommandType.StoredProcedure;//设置执行类型为执行存储过程
    cmd.ExecuteNonQuery();
    }

    2.调用有参有返回值的存储过程
    假设存储过程如下:
    Create PROC proc_2
    @result int output,//要返回的参数
    @number int,
    @tid int
    AS
    Update Table_1 Set number=number+@number Where tid=@tid
    Select @result=number From Table_1
    GO

    调用方法:
    public static int exec_proc_2(int number, int tid)
    {
    SqlCommand cmd = new SqlCommand("proc_2", con);//同上
    cmd.CommandType = CommandType.StoredProcedure;//同上
    cmd.Parameters.Add(new SqlParameter("@result", SqlDbType.Int));//添加一个名为@result的参数,数据类型为SqlDbType.Int
    cmd.Parameters["@result"].Direction = ParameterDirection.Output;//将@result参数设置成为接收输出参数
    cmd.Parameters.AddWithValue("@number", number);
    cmd.Parameters.AddWithValue("@tid", tid);            
    cmd.ExecuteNonQuery();
    int result = (int)cmd.Parameters["@result"].Value;//将输出的Object数据转换成int类型
    return result;
    }

    3.调用返回一张表的存储过程并接收
    假设存储过程如下
    Create PROC proc_3
    AS
    Select * From Table_1--查询一张表
    GO

    调用方法:
    public static DataTable exec_proc_3()
    {
    SqlCommand cmd = new SqlCommand("proc_3", con);//同上
    cmd.CommandType = CommandType.StoredProcedure;//同上
    SqlDataAdapter da = new SqlDataAdapter(cmd);//用SqlDataAdapter执行
    DataTable table = new DataTable();//创建一张表
    da.Fill(table);//填充表
    return table;
    }
  • 相关阅读:
    替换gitlab自带的Nginx,并修改仓库存储路径
    linux 内网scp 无密码传输
    centos7 安装docker及Hyperf
    VMware 安装centos 7 及自动挂载共享文件夹
    基于 Thrift + Laravel RPC 调用实现
    PHP计算两个经纬度地点之间的距离
    sql server 2008安装过程中服务器配置出错
    SQL Server2008如何设置开启远程连接
    向上下左右不间断无缝滚动图片的效果(兼容火狐和IE)
    彻底解决Google浏览器CSS居中问题
  • 原文地址:https://www.cnblogs.com/meimao5211/p/3384155.html
Copyright © 2011-2022 走看看