< 이전

학습 7에서 완성된 exceptionHandlingTest.egl 파일

이 코드는 학습 7에서 완성된 exceptionHandlingTest.egl 파일입니다. 파일에 빨간색 X 기호로 표시된 오류가 있으면 사용자의 코드가 다음 코드와 일치하는지 확인하십시오.

package programs;

import eglderbyr7.data.Customer;
import eglderbyr7.data.Orders;

program exceptionHandlingTest type BasicProgram {}
  
  function main()
    customer Customer;
    customer.FirstName = "John";
    customer.LastName = "Doe";
    customer.CustomerId = 1;
    
    customerOrder Orders;
    customerOrder.CustomerId = 1;
    customerOrder.OrderId = 50;
    customerOrder.OrderAmount = 0;
    customerOrder.OrderDetails = 
      "This is my first order, so get it right!";
  
    try
      add customerOrder;
      SysLib.writeStdout("Order added successfully.");
      add customer;
      SysLib.writeStdout("Customer added successfully.");
    onException(ex SQLException)
      SysLib.writeStdout("SQL exception "::ex.messageID);
      SysLib.writeStdout("message = "::ex.message);
      SysLib.writeStdout("Performing rollback.");
      SysLib.rollback();      
    end
    
    
    tempOrder Orders;
    tempOrder.OrderId = 50;
    get tempOrder;
    
    if (tempOrder is noRecordFound)
      SysLib.writeStdout("The order was rolled back successfully.");
    else
      SysLib.writeStdout("The order is still in the database");
    end
    
  end

end

학습 7: 예외 처리 및 롤백으로 되돌아가십시오.

< 이전