惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

腾讯CDC
IT之家
IT之家
有赞技术团队
有赞技术团队
WordPress大学
WordPress大学
Apple Machine Learning Research
Apple Machine Learning Research
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 【当耐特】
V
V2EX
Last Week in AI
Last Week in AI
H
Help Net Security
The GitHub Blog
The GitHub Blog
S
SegmentFault 最新的问题
F
Fortinet All Blogs
I
InfoQ
宝玉的分享
宝玉的分享
A
About on SuperTechFans
MongoDB | Blog
MongoDB | Blog
Microsoft Azure Blog
Microsoft Azure Blog
Blog — PlanetScale
Blog — PlanetScale
B
Blog

博客园 - 黄毅.net

获取oracle 表字段,表名,以及主键之类等等的信息。 .net 处理xml 查找节点 属性 添加节点 - 黄毅.net js显示日期 - 黄毅.net - 博客园 Jmail组件使用方法(asp) access存储和读取二进制字段数据 如何让数据库排序的时候按照中文的拼音来排序 flash不合js冲突(js菜单会飘到flash下面) & 不剪断代码透明化 - 黄毅.net DateAdd函数使用方法 【winform】datagridview绑定到arraylist的时候,arraylist元素变化而dgv不变的解决。 treeview显示数据表树结构。 asp读写txt操作 - 黄毅.net - 博客园 读取硬盘id (这个好像仅限于ide硬盘) 播放器嵌入代码 url传递中文的解决方案总结 Js验证是否为数字 执行完asp,然后把html写进静态页面(功能类型于spider,还是xmlhttp的) 一个分页的sp,从aspnetpager过来的 网站测试技术简介 验证email正则js
关于.net操作Oracle数据库,parameters参数顺序的问题。
黄毅.net · 2010-03-19 · via 博客园 - 黄毅.net

代码

 1  /// <summary>
 2         /// 插入数据
 3         /// </summary>
 4         public void Insert(Users _users, IDbTransaction transaction)
 5         {
 6             //建立插入的SQL语句
 7             StringBuilder strSql = new StringBuilder();
 8             strSql.Append("Insert into T_USERS");
 9             strSql.Append("(UserId,UserName)");
10             strSql.Append(" values ");
11             strSql.Append("(@UserId,@UserName)");
12 
13            

14             //建立插入参数数组
15             OracleParameter[] parameters = {
16 
17                                       //主Id字段
18                                        new OracleParameter("@UserId", OracleDbType.Varchar2,20),
19                                       //用户名
20                                        new OracleParameter("@UserName", OracleDbType.Varchar2,20)         
21                                          };
22             _users.UserId = BasicManage.GetSequences("T_USERS"6"YYXXXXXX");//这只是一个返回序列的方法。
23             parameters[0].Value = _users.UserId;
24             parameters[1].Value = _users.UserName;
25           
26             //执行SQL语句
27             //OracleConnection conn = BasicManage.GetConn();
28             try
29             {
30                 BasicManage bm = new BasicManage();
31                 bm.ExecuteSQL(transaction, strSql.ToString(), parameters);
32                 

33 
34             }
35             catch (Exception ex)
36             {
37                 transaction.Rollback();
38                 transaction.Connection.Close();
39                 throw ex;
40             }
41         }

大家看这样一段代码,在sql语句中 @UserId是在@UserName上面的,

在Sqlserver里面,下面的Parameters的顺序,是不影响的,也就是只要参数对了,顺序可以随便。

但如果在连接oracle的时候,两个参数的位置绝对别错,

如果顺序错了,运行也不会报错,只是 更新不上去数据,不知道是不是因为我的问题,反正是我把顺序调正确了。记录就更新成功了。

一点小技巧。希望大家别在遇到这个问题排错方面着急。