zoukankan      html  css  js  c++  java
  • C#.net中三层结构中怎样调用存储过程

     下面的CmdObj.是定义的SqlCommand对象

    1、获得存储过程中return语句返回的整个存储过程函数的返回值:

    //获得存储过程return的值,定义一个参数,指明其作用是接受return的值
        CmdObj.Parameters.Add("RETURN_VALUE", SqlDbType.Int).Direction =ParameterDirection.ReturnValue;
    通过获取该参数的方式最终获得return返回的值
    int reValue = int.Parse(CmdObj.Parameters["RETURN_VALUE"].Value.ToString());

    2、获得存储过程输出参数的值:

    定义sql的参数,指定类型是输出
    CmdObj.Parameters.Add("@outValue", SqlDbType.VarChar).Direction =ParameterDirection.Output;

    获得输出参数的值
    string outValue = CmdObj.Parameters["@outValue"].Value.ToString();

    总结,关键地方就是指明参数的Direction 属性,使用ParameterDirection来指定,可以指定4种类型,
    输入,
    输出,
    既是输入又是输出,
    接受returns

     
    (1)执行一个没有参数的存储过程的代码如下: 
    
    SqlConnection conn=new SqlConnection(“connectionString”); 
    SqlDataAdapter da = new SqlDataAdapter(); 
    da.selectCommand = new SqlCommand(); 
    da.selectCommand.Connection = conn; 
    da.selectCommand.CommandText = "NameOfProcedure"; 
    da.selectCommand.CommandType = CommandType.StoredProcedure; 
    (2)执行一个有参数的存储过程的代码如下 
    
    SqlConnection conn=new SqlConnection(“connectionString”); 
    SqlDataAdapter da = new SqlDataAdapter(); 
    da.selectCommand = new SqlCommand(); 
    da.selectCommand.Connection = conn; 
    da.selectCommand.CommandText = "NameOfProcedure"; 
    da.selectCommand.CommandType = CommandType.StoredProcedure; 
    param = new SqlParameter("@ParameterName", SqlDbType.DateTime); 
    param.Direction = ParameterDirection.Input; 
    param.Value = Convert.ToDateTime(inputdate); 
    da.selectCommand.Parameters.Add(param); 
    若需要添加输出参数: 
    
    param = new SqlParameter("@ParameterName", SqlDbType.DateTime); 
    param.Direction = ParameterDirection.Output; 
    param.Value = Convert.ToDateTime(inputdate); 
    da.selectCommand.Parameters.Add(param); 
    若要获得参储过程的返回值: 
    
    param = new SqlParameter("@ParameterName", SqlDbType.DateTime); 
    param.Direction = ParameterDirection.ReturnValue; 
    param.Value = Convert.ToDateTime(inputdate); 
    da.selectCommand.Parameters.Add(param);
  • 相关阅读:
    java—在maven项目中配置selenium运行环境
    java—Maven安装配置
    java基础—异常处理
    java基础—IO流
    怎么查看chrome网络日志
    http缓存之304 last-modified,cache-control:max-age,Etag等
    dubbo源码分析7-dubbox怎么对dubbo做了扩展
    SQLite如何测试
    New line
    ElasticSearch 入门笔记1
  • 原文地址:https://www.cnblogs.com/chenghu/p/2284083.html
Copyright © 2011-2022 走看看