dbindex 요소

컨텐트 모델

dbindex:==keyfield

특성

  • @_operation (문자열)
  • @applicableIf (문자열)
  • @label (문자열)
  • @name (MNTOKEN)
  • @unique (boolean)

부모

<element>

하위

<keyfield>

설명

이 요소를 사용하면 테이블에 연결된 인덱스를 정의할 수 있습니다.

사용 및 사용 상황

여러 색인을 정의할 수 있습니다. 하나의 색인은 테이블의 필드를 하나 이상 참조할 수 있습니다. 일반적으로 인덱스 선언은 기본 스키마 요소의 정의를 따릅니다.

<dbindex>에 정의된 <keyfield> 요소의 순서는 매우 중요합니다. 첫 번째 <keyfield>은 쿼리가 주로 기반으로 하는 인덱스 기준이어야 합니다.

데이터베이스의 인덱스 이름은 테이블 이름과 인덱스 이름을 연결하여 계산됩니다. 예:인덱스 생성 쿼리 중 인덱스 필드의 테이블 이름 "Sample", 네임스페이스 "Cus", 인덱스 이름 "MyIndex"-> 이름:"CusSample_myIndex".

특성 설명

  • _operation(문자열):데이터베이스의 쓰기 유형을 정의합니다.

    이 속성은 기본적으로 기본 스키마를 확장할 때 사용됩니다.

    액세스 가능한 값은 다음과 같습니다.

    • "없음":화해만. 즉, Adobe Campaign은 요소를 업데이트하지 않고 복구하거나 오류가 없는 경우 오류를 생성합니다.
    • "insertOrUpdate":삽입으로 업데이트합니다. 즉, Adobe Campaign은 요소를 업데이트하거나 존재하지 않을 경우 요소를 만듭니다.
    • "삽입":삽입. 즉, Adobe Campaign은 요소의 존재 여부를 확인하지 않고 요소를 삽입합니다.
    • "업데이트":업데이트를 참조하십시오. 즉, Adobe Campaign은 요소를 업데이트하거나 존재하지 않을 경우 오류를 생성합니다.
    • "삭제":삭제할 수 있습니다. 즉, Adobe Campaign은 요소를 복구 및 삭제합니다.
  • applicableIf (string):인덱스를 고려하기 위한 조건 - XTK 표현식을 받습니다.

  • label (string):색인 레이블.

  • 이름(MNTOKEN):고유 색인 이름.

  • 고유(부울):이 옵션이 활성화되면(@unique="true") 속성은 해당 필드 전체에서 색인의 고유성을 보장합니다.

예제

"id" 필드에 색인을 만듭니다. (데이터베이스(쿼리)에서 인덱스를 만들 때 <dbindex> 요소의 "@unique" 속성은 "UNIQUE" SQL 키 단어의 추가를 트리거합니다.)

<element label="Sample" name="Sample">
  <dbindex name="myIndex" label="My index on the ID field" unique="true" applicableIf="HasPackage('nms:social')">
      <keyfield xpath="@id"/>
  </dbindex>
    <attribute name="id" type="long"/>
</element>          
ALTER TABLE CusSample ADD iSampleId INTEGER;
UPDATE CusSample SET iSampleId = 0;
ALTER TABLE CusSample ALTER COLUMN iSampleId SET Default 0;
ALTER TABLE CusSample ALTER COLUMN iSampleId SET NOT NULL; 
CREATE UNIQUE INDEX CusSample_myIndex ON CusSample(iSampleId);

"@mail" 및 "@phoneNumber" 필드에 합성 인덱스 만들기:

<element label="NewSchemaUser" name="NewSchemaUser">
  <dbindex name="myIndex" label="My composite index">
         <keyfield xpath="@email"/>
         <keyfield xpath="@phone"/>
  </dbindex>
  
  <attribute name="email" type="string"/>
  <attribute name="phone" type="string"/>
</element>      
CREATE INDEX DocNewSchemaUser_myIndex ON DocNewSchemaUser(sEmail, sPhone);

이 페이지에서는

Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now