PL/SQL EO 设计与开发

1.INSERT

调用PL/SQL 去insert的时候,没有使用super(),此时应当自己创建callable statement;

调用checkErrors()方法在执行 callable statement 处理异常后

protected void insertRow()
{
   try
   {
     String insertStmt = "BEGIN INSERT_RECORD( " +
                                  "PARAM1 => :1, " +
                                  "PARAM2 => :2, " +
                                  "PARAM3 => :3, " +
                                  "PARAM4 => :4); END;";

     DBTransaction trxn = getDBTransaction(); 
     CallableStatement insertStmt = trxn.createCallableStatement(insertStmt, 1);    
   
     // Rebind parameters 
     insertStmt.setString(1, getFirstName()); 
     insertStmt.setString(2, getLastName()); 
     insertStmt.setString(3, getAddress1()); 
     insertStmt.setString(4, getAddress2()); 
     // Execute the statement 
     insertStmt.executeUpdate(); 
     // OAExceptionUtils.checkErrors as per PLSQL API standards 
     OAExceptionUtils.checkErrors (txn); 
   } 
   catch(SQLException sqlE) 
   { 
      ... 
   } 
 } 

If you have any calculations for any of your EO columns in your PL/SQL procedure, and if you would like to reflect those values in your EO after row insertion in the database, then you should include those columns in your view object SQL and do the following:

txn.commit();
vo.executeQuery();

清除EO缓存

clearEntityCache() ;

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。