ADO.NET和ORACLE操作数据库传参数赋值的方式
在使用.Net使用OracleParameter进行Oracle数据库操作的时候,因为Oracle和SQLServer针对查询参数化的语法不同,
在操作SQLServer的时候使用的是@ParameterName,
而Oracle使用的是:ParameterName
而且sql伪语句也有相应的变化,对比一下sqlserver和oracle的区别:
String sql = "delete from postinfo where id=@id";
SqlParameter p1 = new SqlParameter("@id", id);
String sql = "delete from postinfo where id=:id";
OracleParameter p1 = new OracleParameter("id", id);
示例2:
strSql = "update web_goods set producthtml= :output where productid='"+strProductid+"'";
OracleParameter[] ps=new OracleParameter[1];
ps[0] = new OracleParameter();
ps[0].ParameterName = "output";
ps[0].OracleType = OracleType.Clob;
ps[0].Value = output;
另外就是需要检查数据类型是否相符,此处附上Oracle和SQLServer在C#中的数据类型对照表。
Oracle在C#中的数据类型对照表

SQLServer在C#中的数据类型对照表

ADO.NET和ORACLE操作数据库传参数赋值的方式的更多相关文章
- SQL Server -- 回忆笔记(三):ADO.NET之C#操作数据库
SQL Server知识点回忆篇(三):ADO.NET之C#操作数据库 1.连接数据库 (1)创建连接字符串: 使用windows身份验证时的连接字符串: private string conStr= ...
- Oracle操作数据库oracleHelper
1 Oracle OracleHelper //============================================================================ ...
- C# ADO基础(使用using操作数据库)
1.使用using 来对数据库进行操作,using是资源释放的一种缩写,用于实现了实现了IDisposable接口(释放对象资源的接口是IDisposable) private void button ...
- Oracle 操作数据库(增删改语句)
对数据库的操作除了查询,还包括插入.更新和删除等数据操作.后3种数据操作使用的 SQL 语言也称为数据操纵语言(DML). 一.插入数据(insert 语句) 插入数据就是将数据记录添加到已经存在的数 ...
- Oracle -操作数据库
删除数据: delete:用delete删除记录,Oracle系统会产生回滚记录,所以这种操作可以使用ROLLBACK来撤销 truncate:删除数据时,不会产生回滚记录.所以执行速度相对较快些 可 ...
- ADO.NET查询和操作数据库
stringbuilder 类 stringbuilder类:用来定义可变字符串 stringbulider Append(string value) 在结尾追加 stringbuilder in ...
- 使用ADO.NET查询和操作数据库
String和StringBuilder 语法: //声明一个空的StringBuilder对象 StingBuilder对象名称 = new StringBuilder(); //声明一个Str ...
- 吴裕雄 python oracle操作数据库(4)
import cx_Oracle conn = cx_Oracle.connect("scott/admin@localhost:1521/orcl")cursor = conn. ...
- setTimeout循环传参数几种方式
for(var i=0;i<5;i++){ setTimeout(function(){ console.log(`错误 ${i}`); },0) } 这种错误的,参数不会变! 以下几种方式正确 ...
随机推荐
- Latex及Beamer
一 资源 Latex编辑部 Codecogs,latex在线编辑可见
- CodeFirst中DB保存时报错:对一个或多个实体的验证失败。
错误提示如下: 开始以为有字段可能没有添加数据,可是检查了很久,仍然没有任何头绪. 后使用DbEntityValidationException进行调试,问题才得以解决
- 关于MYSQL优化(持续更新)
*利用MYSQL数据缓存提高效率,注意事项: 1.应用环境:不经常改变的表及对此表相同的查询 2.不适用于服务器端编写的语句 3.根据数据使用频率,合理分解表 4.合理使用默认条件,提高命中率 5.统 ...
- Yosemite重置Dock的命令
备忘 defaults write com.apple.dock ResetLaunchPad -bool true killall Dock
- 转:2014 年 15 款新评定的最佳 PHP 框架
原文来自于:http://blog.jobbole.com/59999/ 原文出处: codegeekz 译文出处:oschina 欢迎分享原创到伯乐头条 通常,框架都会被认为是帮助开发者快速 ...
- 零零碎碎搞了一天最后发现是ruby版本问题
查来查去查不到问题,后来在stackoverflow看到: http://stackoverflow.com/questions/22352838/ruby-gem-install-json-fail ...
- Java实现Qt的SIGNAL-SLOT机制
SIGNAL-SLOT是Qt的一大特色,使用起来十分方便.在传统的AWT和Swing编程中,我们都是为要在 监听的对象上添加Listener监听器.被监听对象中保存有Listener的列表,当相关事件 ...
- ArrayList的toArray
ArrayList提供了一个将List转为数组的一个非常方便的方法toArray.toArray有两个重载的方法: 1.list.toArray(); 2.list.toArray(T[] a); ...
- updatepanel刷新后重新加载js脚本问题
在页尾加 <script type="text/javascript"> Sys.WebForms.PageRequestManager.getInstance().a ...
- 搜索(DLX):HDU 3663 Power Stations
Power Stations Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...