数据插入oracle数据库异常捕获

gzyyan249 2013-05-02 08:30:11
现在我有一string数组,然后通过变量绑定进行批量插入,插入失败则回滚。问题是:如果碰到插入异常,我catch到了之后如何判断是在哪一行插入失败的?
...全文
182 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gzyyan249 2013-05-04
  • 打赏
  • 举报
回复
引用 4 楼 a312100321 的回复:
取到index不就OK了?
如何获取?能说具体点吗
燕雀之志 2013-05-03
  • 打赏
  • 举报
回复
取到index不就OK了?
瑞卡哥哥 2013-05-03
  • 打赏
  • 举报
回复
事务异常示例:

Create Or Replace Procedure EXEC_TEST01 As

  Cursor C_ITEM Is
    SELECT .... 
  
  V_ITEM C_ITEM%Rowtype;
  INTEGRITY_ERROR Exception;
  ERRNO  Integer;
  ERRMSG Varchar2(2000);
Begin
  Open C_ITEM;
  Fetch C_ITEM
    Into V_ITEM;
  While C_ITEM%Found Loop
    Begin
      DoThing.....
      Commit;
    Exception
      When Others Then
        ERRMSG := Sqlerrm;//返回Oracle的错误信息
        Rollback;
        Update ERROR_LIST
           Set MSG = ERRMSG
         Where LISTID = ..
        Commit;
    End;
    Fetch C_ITEM
      Into V_ITEM;
  End Loop;
  Close C_ITEM;
Exception
  When INTEGRITY_ERROR Then
    RAISE_APPLICATION_ERROR(ERRNO, ERRMSG);
End;


City_member 2013-05-03
  • 打赏
  • 举报
回复
List<string> dal = new List<string>();
            dal.Add("1");
            dal.Add("2");
            dal.Add("3");
            dal.Add("4");

            List<string> faildal = new List<string>();
            foreach (string str in dal)
            {
                try
                {

                }
                catch
                {
                    faildal.Add(str);
                }
            }
gzyyan249 2013-05-03
  • 打赏
  • 举报
回复
没人知道吗?自己先顶一下

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧