贴两段代码。

1>

public int ExecuteNonQuery(string pro, MobileOrder or)
        {
            SqlParameter[] sp = {
            new SqlParameter("@customer",SqlDbType.NVarChar,10),
            new SqlParameter("@IDCardNo",SqlDbType.NVarChar,18),
            new SqlParameter("@SaleID",SqlDbType.Int),
            new SqlParameter("@MobileModelID",SqlDbType.Int),
            new SqlParameter("@Amount",SqlDbType.Int),
            new SqlParameter("@PayFee",SqlDbType.Float)
                               };
            sp[0].Direction = ParameterDirection.Output;
            sp[1].Value = or.IDCardNo;
            sp[2].Value = or.SaleID;
            sp[3].Value = or.MobileModelID;
            sp[4].Value = or.Amount;
            sp[5].Direction = ParameterDirection.Output;

db.ExecuteNonQuery(sql, ref sp);
            return sp[0].value;

}

2>

public int ExecuteNonQuery(string sql, ref SqlParameter[] sp)
        {
            using (SqlConnection conn = new SqlConnection(sqlCon))
            {
                try
                {
                    SqlCommand comm = new SqlCommand();
                    comm.CommandType = CommandType.StoredProcedure;
                    comm.CommandText = sql;
                    comm.Connection = conn;
                    if (sp != null)
                    {
                        comm.Parameters.AddRange(sp);
                    }
                    conn.Open();
                    return comm.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    return 0;
                }
                finally
                {
                    conn.Close();
                }
            }

}

第一段代码中声明一个sqlparameter的数组,该数组中有两个元素是output类型。第一段代码的最后调用了第二段代码所代表的方法。output的作用就是经过调用后,编译器自动将执行数据库操作后的相应的数值赋给性质为output的元素,因此在第一段代码中调用sp[0]和sp[5],相应的value值发生变化,而sp[1]、sp[2]、sp[3]、sp[4]的数值没有发生变化。

学习笔记。如有错误,欢迎指正。

最新文章

  1. HTML5教程之html 5 本地数据库(Web Sql Database)
  2. Razor视图引擎输出没有编码的 Html 字符串
  3. poj1012.Joseph(数学推论)
  4. C++读入二进制数并转换为十进制输出
  5. [unity3d程序] 颜色渐变效果
  6. Spring AOP进行日志记录
  7. createElement
  8. Android 权限管理
  9. selenium2使用记录
  10. CVTE后台开发实习生岗位面试经验(2017.3)
  11. Jetson TX2(2)ubutu1604--安装opencv3.4.0
  12. Chrome_断点调试(使用vue-resource进行数据交互)
  13. redisi应用--布隆过滤器
  14. puppet 横向扩展(一)
  15. 安卓Android基础第三天——数据库,ListView
  16. 解决浏览器跨域限制方案之JSONP
  17. 【第一部分】04Leetcode刷题
  18. Jmeter接口测试参数化实例图文示例
  19. Free Download Manager (FDM) 中文版 - 替代迅雷最佳免费开源下载工具软件
  20. 匿名管道和pipe函数

热门文章

  1. 准循环LDPC码用于公钥密码时的奇偶校验矩阵
  2. 后台接收URL地址的参数
  3. js操作新添加的DOM的问题
  4. alibaba fastjson List<Map<String, String>>2Str
  5. 利用Spring中同名Bean相互覆盖的特性,定制平台的类内容。
  6. java网络编程,简单的客户端和服务器端
  7. MySQL数据库常用命令
  8. ExtJS自制表格Grid分页条
  9. pyhon——进程线程、与协程基础概述
  10. openxml(二) 添加页眉,页脚