使用ODP.NET进行Oracle批量更新
看一下这个例子来做批量插入,我假设使用相同的逻辑可以用于更新。 我尝试了以下内容,看看它是否可行,但它没有:
string sql = "update TEST set NAME=:newName where NAME=:name"; connection.Open(); OracleCommand command = connection.CreateCommand(); command.CommandText = sql; command.CommandType = System.Data.CommandType.Text; command.BindByName = true; command.ArrayBindCount = 5; string[] originalName = { "Test1", "Test2", "Test3", "Test4", "Test5" }; string[] newName = { "New Test1", "New Test2", "New Test3", "New Test4", "New Test5" }; command.Parameters.Add(":newName", OracleDbType.Varchar2, originalName, System.Data.ParameterDirection.Input); command.Parameters.Add(":name", OracleDbType.Varchar2, newName, System.Data.ParameterDirection.Input); command.ExecuteNonQuery(); connection.Close();
这不适用于更新吗? 有没有办法轻松地进行批量更新,类似于在我链接的示例中如何执行批量插入?
事实certificate我的参数名称被翻转了。 让我永远找到它。
你不能将数组作为参数传递。
你可以做的是遍历你的数组并为数组的每个位置调用更新(这不是真正的“批量”插入),或者你可以使用类似的东西:
WHERE NAME in ("Test1", "Test2", "Test3", "Test4", "Test5")
等等
上述就是C#学习教程:使用ODP.NET进行Oracle批量更新分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1301069.html