你新增加记录的时候应该是调用存储过程的吧, 在过程中添加一个输出参数,执行成功后将执行成功的记录ID赋给输出参数.  然后在C#中判断就可以了.

解决方案 »

  1.   

    那你直接在前端传递插入的语句?  你是使用序列还是使用select max(id)+1 from dual的方式呢? 如用前者就写过程,调用好用. 如果用后者,就把max(id)+1的值赋给一个变量就可以了.
      

  2.   

    我已经找到解决方案了。就是在新增前先获取主键值,然后执行Insert语句
      

  3.   

    也就是查询到最大值加一,然后用得到的值插入,但是如果有很多人在同时操作一个表的话要先锁定表.
    不过还是建议使用过程,用sequence来执行.
      

  4.   

    不能使用 returning 子句吗?insert into ... values(...) returning pk_column into v;