4단계: 원장의 문서 수정 - 아마존 퀀텀 레저 데이터베이스 (아마존QLDB)

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

4단계: 원장의 문서 수정

중요

지원 종료 알림: 기존 고객은 2025년 7월 31일 지원이 종료될 QLDB 때까지 Amazon을 사용할 수 있습니다. 자세한 내용은 아마존 QLDB 원장을 Amazon Aurora SQL Postgre로 마이그레이션을 참조하십시오.

이제 작업할 데이터가 확보되었으므로 QLDB Amazon에서 vehicle-registration 원장에 있는 문서를 변경할 수 있습니다. 예를 들어, 다음과 같은 Audi A5를 생각해 보십시오. VIN 1N4AL11D75C109151 이 차는 처음에 워싱턴 주 시애틀에 있는 라울 루이스라는 운전자가 소유하고 있습니다.

라울이 워싱턴 주 에버렛에 사는 브렌트 로건이라는 주민에게 차를 판다고 가정해 보겠습니다. 그러던 중 브렌트와 알렉시스 페나는 결혼하기로 결정합니다. 브렌트는 등기부 상에 알렉시스를 보조 소유자로 추가하고자 합니다. 이 단계에서 다음 데이터 조작 언어 (DML) 명령문은 이러한 이벤트를 반영하여 원장을 적절하게 변경하는 방법을 보여줍니다.

작은 정보

가장 좋은 방법은 문서의 시스템 할당 id를 외래 키로 사용하는 것입니다. 고유 식별자로 사용할 필드 (예: 차량VIN) 를 정의할 수 있지만 문서의 진정한 고유 식별자는 해당 필드입니다. id 이 필드는 문서의 메타데이터에 포함되며 커밋된 뷰(테이블의 시스텀 정의 뷰)에서 쿼리할 수 있습니다.

의 뷰에 대한 자세한 내용은 QLDB 을 참조하십시오핵심 개념. 메타데이터에 대해 자세히 알아보려면 문서 메타데이터 쿼리 섹션을 참조하세요.

문서를 수정하려면
  1. https://console.aws.amazon.com/qldb 에서 아마존 QLDB 콘솔을 엽니다.

  2. 탐색 창에서 PartiQL 편집기를 선택합니다.

  3. vehicle-registration 원장을 선택합니다.

    참고

    콘솔의 자동 샘플 데이터 로드 기능을 사용하여 원장을 설정하는 경우 6단계로 넘어가세요.

  4. INSERT 문을 수동으로 실행하여 샘플 데이터를 로드하는 경우 다음 단계를 계속하세요.

    처음에 라울을 이 차량의 소유주로 등록하려면 Person 테이블에서 Raul의 시스템 할당 문서 id를 찾는 것부터 시작합니다. 이 필드는 문서의 메타데이터에 포함되어 있으며, 커밋된 보기라고 하는 테이블의 시스템 정의 뷰에서 쿼리할 수 있습니다.

    쿼리 편집기 창에서 다음 문을 입력한 후 실행을 선택합니다.

    SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Raul' and p.data.LastName = 'Lewis'

    접두사 _ql_committed_Person 테이블의 커밋된 뷰를 쿼리하려는 것을 나타내는 예약된 접두사입니다. 이 뷰에서는 데이터가 data 필드에 중첩되고 메타데이터는 metadata 필드에 중첩됩니다.

  5. 이제 이 idUPDATE 문에 사용하여 VehicleRegistration 테이블의 해당 문서를 수정하세요. 다음 문을 입력한 다음 실행을 선택합니다.

    UPDATE VehicleRegistration AS r SET r.Owners.PrimaryOwner.PersonId = '294jJ3YUoH1IEEm8GSabOs' --replace with your id WHERE r.VIN = '1N4AL11D75C109151'

    이 문을 실행하여 Owners 필드를 수정했는지 확인하세요.

    SELECT r.Owners FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
  6. 차량 소유권을 에버렛에 있는 브렌트에게 이전하려면 먼저 다음 문을 사용하여 Person 테이블에서 그의 id을 찾으세요.

    SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Brent' and p.data.LastName = 'Logan'

    그런 다음, 이 id를 사용하여 VehicleRegistration 테이블의 PrimaryOwnerCity를 업데이트하세요.

    UPDATE VehicleRegistration AS r SET r.Owners.PrimaryOwner.PersonId = '7NmE8YLPbXc0IqesJy1rpR', --replace with your id r.City = 'Everett' WHERE r.VIN = '1N4AL11D75C109151'

    다음 문을 실행하여 PrimaryOwnerCity 필드를 수정했는지 확인하세요.

    SELECT r.Owners.PrimaryOwner, r.City FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
  7. 알렉시스를 차량의 보조 소유자로 추가하려면 그녀의 Person id를 찾으세요.

    SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Alexis' and p.data.LastName = 'Pena'

    그런 다음 다음 FROM- INSERT DML 문을 사용하여 SecondaryOwners 목록에 이 id 내용을 삽입합니다.

    FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151' INSERT INTO r.Owners.SecondaryOwners VALUE { 'PersonId' : '5Ufgdlnj06gF5CWcOIu64s' } --replace with your id

    이 문을 실행하여 SecondaryOwners를 수정했는지 확인하세요.

    SELECT r.Owners.SecondaryOwners FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'

vehicle-registration 원장의 이러한 변경 사항을 검토하려면 5단계: 문서의 개정 기록 보기을 참조하세요.