1.注:Oracle:OracleParameter,参数命名以“:”作为标识;

MSSQL:SqlParameter,参数命名以“@”作为标识,根据数据库不同调用不同的接口。

2.附Parameter.Add()和Parameter.AddRange()方法的区别:

Parameters.Add将指定的 SqlParameter 对象添加到 SqlParameterCollection 中

SqlParameterCollection.AddRange 将值数组添加到 SqlParameterCollection 的末尾。

在群体操作时,使用AddRange取代Add。

Oracle实例:

public static Boolean getLmt(string lmtd_name){string usr_user = HttpContext.Current.Session["MJERP10username"].ToString();if (lmtd_name == "") { return true; }//string sql = @"select id from sys_lmtd where lmtd_mde||'_'||lmtd_name='" + lmtd_name + "' and lmtd_username='" + usr_user + "' union all select ro.id from role_mstr ro join usr_mstr on usr_role_id = ro.id where usr_user = '" + usr_user + "'";string sql1 = @"select id from sys_lmtd where lmtd_mde||'_'||lmtd_name=:lmtd_name and lmtd_username=:lmtd_username union all select ro.id from role_mstr ro join usr_mstr on usr_role_id = ro.id where usr_user =:usr_user";OracleParameter[] param = new OracleParameter[]{new OracleParameter(":lmtd_name",OracleType.VarChar,50),  new OracleParameter(":lmtd_username",OracleType.VarChar,50), new OracleParameter(":usr_user",OracleType.VarChar,30)};param[0].Value = lmtd_name;param[1].Value = usr_user;param[2].Value = usr_user;DataSet ds = new DataSet();using (OracleConnection connection = new OracleConnection(ConfigurationManager.AppSettings["connString"])){connection.Open();OracleCommand cmd = new OracleCommand(sql1,connection);for (int i = 0; i < param.Length; i++){cmd.Parameters.Add(param[i]);}//cmd.Parameters.AddRange(param);OracleDataAdapter myda = new OracleDataAdapter(cmd);myda.Fill(ds);connection.Close();}if (ds.Tables[0].Rows.Count > 0){ds.Dispose();return true;}else{ds.Dispose();return false;}}

View Code

MSSQL实例:

//取用户权限public static Boolean getLmt(string lmtd_name){Dictionary<string, object> dic = new Dictionary<string, object>();string usr_user = HttpContext.Current.Session["MJERP10username"].ToString();if (lmtd_name == "") { return true; }//string sql = @"select id from sys_lmtd where lmtd_mde||'_'||lmtd_name='" + lmtd_name + "' and lmtd_username='" + usr_user + "' union all select ro.id from role_mstr ro join usr_mstr on usr_role_id = ro.id where usr_user = '" + usr_user + "'";string sql1 = @"select id from sys_lmtd where lmtd_mde||'_'||lmtd_name=:lmtd_name and lmtd_username=:lmtd_username union all select ro.id from role_mstr ro join usr_mstr on usr_role_id = ro.id where usr_user =:usr_user";SqlParameter[] param = new SqlParameter[]{new SqlParameter(":lmtd_name",SqlDbType.NVarChar,50),  new SqlParameter(":lmtd_username",SqlDbType.NVarChar,50), new SqlParameter(":usr_user",SqlDbType.NVarChar,30)};param[0].Value = lmtd_name;param[1].Value = usr_user;param[2].Value = usr_user;DataSet ds = new DataSet();using (SqlConnection connection = new SqlConnection(ConfigurationManager.AppSettings["connString"])){connection.Open();SqlCommand cmd = new SqlCommand(sql1, connection);//for (int i = 0; i < param.Length; i++)//{//    cmd.Parameters.Add(param[i]);// }
            cmd.Parameters.AddRange(param);SqlDataAdapter myda = new SqlDataAdapter(cmd);myda.Fill(ds);connection.Close();}if (ds.Tables[0].Rows.Count > 0){ds.Dispose();return true;}else{ds.Dispose();return false;}}

View Code

转载于:https://www.cnblogs.com/su1643/p/6592932.html

C# OracleParameter 传参 实例相关推荐

  1. C# 使用OracleParameter传参

    例子 : string sql1 = @"select name from table1 where id =:id";OracleParameter[] param = new ...

  2. mysql动态传参实例

    SET @salesman_name ='陈奕迅'; -- SELECT * FROM `ls_customer` WHERE relename =@salesman_name; -- SELECT ...

  3. js调用java_Js调用Java方法并互相传参的简单实例

    Js通过PhoneGap调用Java方法并互相传参的. 一.JAVA代码 写一个类,该类继承自Plugin并重写execute方法. public class PluginTest extends P ...

  4. js调java并传参_Js调用Java方法并互相传参的简单实例

    Js通过PhoneGap调用Java方法并互相传参的. 一.JAVA代码 写一个类,该类继承自Plugin并重写execute方法. import org.json.JSONArray; import ...

  5. Webuploader 多实例传参教程

    Webuploader 多实例传参教程 Webuploader 是百度开发的一款用于图片和文件上传的前端控件,在所有的前端上传控件中算是比较好的,而且文档维护的也比较全面,基础的东西大家移步官网就可以 ...

  6. Vue3(撩课学院)笔记01-创建实例对象,v-for遍历,时间绑定,传参,时间修饰符,计算属性,v-if,v-show,深拷贝,v-model与各类表单的绑定

    1.创建vue实例对象 <!DOCTYPE html> <html lang="en"> <head><meta charset=&quo ...

  7. js中传参的实例 多组图片的指定切换与商品价格的计算

    js中函数传递参数的实例 一.在js中函数的传递参数可以很好的实现代码的重用 代码的重用需要注意以下几点       1.尽量保持HTML代码结构一致,可以通过父级选取子元素       2.把核心主 ...

  8. 帆软地址栏传参,实例

    自动查询: http://help.finereport.com/finereport9.0/doc-view-409.html 参数的种类与区别: http://help.finereport.co ...

  9. c语言调用dll实例 结构体传参,Matlab调用Dll,对于自定义结构体数组如何传参? - 程序语言 - 小木虫 - 学术 科研 互动社区...

    %[例子1] % Matlab调用DLL,整形数组传参 v = [1,22,33;44,-56,67]; pv = libpointer('int16Ptr',v); m = get(pv,'Valu ...

最新文章

  1. BZOJ 2137 submultiple(约数,拉格朗日插值求自然数k次幂和)【BZOJ 修复工程】
  2. linux shell编程语句if、case.
  3. 新鲜出炉!20款好看的英文字体下载
  4. 神经机器阅读理解最新综述:方法和趋势
  5. Git之深入解析在没有合适的网络或者可共享仓库情况下的git bundle打包操作
  6. MVC Areas的使用
  7. python 垃圾回收
  8. 万兆网卡实际吞吐量_AKITIO 10G/NBASE-T PCIe 网卡开箱拆解评测
  9. linux中断pollselcet按键处理机制
  10. interface abstract与virtual
  11. 在html中控制自动换行
  12. 4符号代码_ELF文件格式解析器 原理 + 代码
  13. Java学习笔记之StringBuilder类
  14. 多线段几何图形—— 简单几何图形(从线段中搜索封闭图形)
  15. Cocos Creator 3D 摇杆控制器一种简单实现!
  16. 带参数的公众号二维码 生成+后台拦截java
  17. win7虚拟机时间不能修改怎么办
  18. 鸿蒙系统怎么打开纯净模式,#手机[超话]##2021有点东西##OPP... - @安诺颜_ 的微博精选 - 微博国际站...
  19. 杂牌机搞机之旅最终章————刷入Xposed框架
  20. u盘格式化后数据恢复

热门文章

  1. eclipse奇淫技巧 (转)
  2. MAP(Mean Average Precision)
  3. 纹理对象的实时姿态估计
  4. RCNN (Regions with CNN) 目标物检测 Fast RCNN的基础
  5. 寻求最佳开发模式,免得落得“精”尽人亡
  6. Numpy:数组合矢量计算
  7. 选笔记本选择CPU风扇散热的重要性
  8. Ch -- 一个 C/C++ 解释器
  9. 类似QQ管家页面jquery图片显隐轮换效果
  10. WD1600AAJS AAKS 固件 数据恢复