Database & .NET Basics 04

Jaehyun_Ban·2022년 4월 11일
0

🚀 DML로 레코드 수정


🎯 Learning Objectives

  • Devloper Console에서 쿼리 그리드를 사용해 데이터 레코드를 직접 조작하는 방법
  • DML을 사용해 데이터베이스에 데이터를 유지하는 방법
  • DML 명령을 작성하는 두 가지 방법을 식별

📄 개발자 콘솔에서 데이터 관리

테스트도 해보고 바로 데이터를 수정할 수 있게 해주는 Query Grid

Name을 입력 후 Save를 누르면 Id는 자동으로 생성됨

DML 문

  • Insert: 새 레코드를 insert
  • update: 기존 레코드를 update
  • upsert: 단일 명령문 내에 새 레코드를 생성 + 업데이트(insert + update)하는 특수 작업
    지정 필드를 사용해 기존 개체의 존재 여부 확인 or 필드가 지정되지 않은 경우 ID필드를 사용
  • delete: 기존 레코드를 삭제
  • undelete: 휴지통에서 하나 이상의 기존 레코드를 복원
  • merge: 동일한 객체 유형의 레코드를 최대 3개까지 하나로 병합할 수 있다. 그 후 다른 레코드를 삭제하고 관련 레코드의 상위항목을 다시 지정

📄 DML을 실행하는 두 가지 방법

Apex에서 실행하는 두 가지 방법

  • 명령문 자체를 사용
// Add Account
Account acct = new Account(
    Name='Test Account',
    Phone='(225)555-8989',
    NumberOfEmployees=10,
    BillingCity='Baton Rouge');
insert acct;//생성한 객체를 insert
  • 데이터베이스 클래스 메서드 사용
    • Database를 사용하면 매개변수에 allOrNone하여 부분적으로 성공할 수 있는지 여부를 지정할 수 있다.
    • false로 설정 시 일부 레코드에서 오류가 발생하면 성공한 레코드가 커밋, 실패 레코드의 오류는 반환
// Add Account
Account acct = new Account(
    Name='Test Account',
    Phone='(225)555-8989',
    NumberOfEmployees=10,
    BillingCity='Baton Rouge');
Database.SaveResult[] results = Database.insert(acct, false);

더 자세한건 Database공식문서를 확인

0개의 댓글