delete

EGL delete 문은 언어의 기본 "삭제" 기능을 제공합니다. 이 명령문은 파일에서 레코드를, 관계형 데이터베이스에서 행을 또는 계층 구조 데이터베이스에서 세그먼트를 제거합니다.

대부분의 경우 레코드를 삭제하려면 먼저 레코드를 보류해 두어야 합니다. 레코드를 보류하려면 forUpdate 옵션을 지정하여 get 문을 사용하십시오.

명령문의 정확한 동작은 레코드 변수를 스테레오타입 지정한 방법에 따라 다릅니다(스테레오타입 참조).

구문

delete 문의 구문 다이어그램
recordVariable
이 레코드 변수에는 데이터 소스에서 삭제할 정보가 있습니다.
deleteOptions
레코드 변수를 스테레오타입 지정한 방법에 따라 일부 옵션을 delete 문을 보다 구체적으로 작성하는 데 사용할 수 있습니다. 특정 데이터 액세스 기술에 대한 고려사항을 참조하십시오.
with explicitCode
레코드 변수를 스테레오타입 지정한 방법에 따라 여기서 명시적인 코드를 지정할 수 있습니다. 특정 데이터 액세스 기술에 대한 고려사항을 참조하십시오.
from listID
이 레코드 변수와 연관된 기본 데이터 소스 관련 작업을 수행 중이지 않은 경우에는 목록 ID를 지정하십시오. 이 ID는 이전에 EGL open 또는 get 문에서 작성된 목록을 식별하는 데 사용한 문자열입니다. 나중에 삭제를 수행하려면 open 또는 get 문에서 forUpdate 옵션을 사용해야 합니다.

예제

다음 예제에서는 사용자가 표시된 레코드를 삭제하는 요청을 제출했습니다. 프로그램은 레코드를 삭제하기 전에 지정된 정보가 들어 있는 레코드 변수를 가져와 보유해야 합니다.

  if (userRequest == "D")
    try
      get myCustomer forUpdate;
      onException(ex AnyException)
        myErrorHandler(ex);   // exits the program
    end
    try
      delete myCustomer;
      onException(ex AnyException)
        myErrorHandler(ex);
    end  end