dbindex-Element dbindex--element

Inhaltsmodell content-model-3

dbindex:==keyfield

Attribute attributes-3

  • @_operation (string)
  • @applyIf (string)
  • @label (string)
  • @name (MNTOKEN)
  • @unique (boolean)

Eltern parents-3

<element>

Untergeordnetes Element children-3

<keyfield>

Beschreibung description-3

Mit diesem Element können Sie einen mit einer Tabelle verknüpften Index definieren.

Verwendung und Verwendungskontext use-and-context-of-use-3

Es ist möglich, mehrere Indizes zu definieren. Ein Index kann auf ein oder mehrere Felder der Tabelle verweisen. Die Indexdeklaration folgt in der Regel der Definition des Hauptschemaelements.

Die Reihenfolge der <keyfield> -Elemente, die in einem <dbindex> definiert sind, ist sehr wichtig. Das erste <keyfield> muss das Indexierungskriterium sein, auf dem die Abfragen hauptsächlich basieren.

Der Name des Index in der Datenbank wird durch Verkettung des Tabellennamens und des Indexnamens berechnet. Beispiel: Tabellenname "Sample", Namespace "Cus", Indexname "MyIndex"-> Name des Indexfelds bei der Indexerstellung. Abfrage: "CusSample_myIndex".

Attributbeschreibung attribute-description-3

  • _operation (string): definiert den Schreibtyp in der Datenbank.

    Dieses Attribut wird hauptsächlich bei der Erweiterung von nativen Schemata verwendet.

    Die verfügbaren Werte sind:

    • "none": Abstimmung allein. Das bedeutet, dass Adobe Campaign das Element wiederherstellt, ohne es zu aktualisieren, oder einen Fehler erzeugt, wenn es nicht vorhanden ist.
    • "insertOrUpdate": Update mit Einfügung. Das bedeutet, dass Adobe Campaign das Element aktualisiert oder erstellt, falls es nicht vorhanden ist.
    • "insert": insert. Das bedeutet, dass Adobe Campaign das Element einfügt, ohne zu überprüfen, ob es vorhanden ist.
    • "update": update. Das bedeutet, dass Adobe Campaign das Element aktualisiert oder einen Fehler erzeugt, wenn es nicht vorhanden ist.
    • "Löschen": Löschen. Dies bedeutet, dass Adobe Campaign Elemente wiederherstellt und löscht.
  • applyIf (string): Bedingung für die Berücksichtigung des Index - empfängt einen XTK-Ausdruck.

  • label (string): Indexbezeichnung.

  • name (MNTOKEN): eindeutiger Indexname.

  • unique (boolean): Wenn diese Option aktiviert ist (@unique="true"), garantiert das Attribut die Eindeutigkeit des Index in allen seinen Feldern.

Beispiele examples-3

Erstellung eines Index im Feld "id". (Attribut "@unique" in den Triggern <dbindex> element , die das SQL-Schlüsselwort "UNIQUE" hinzufügen, wenn der Index in der Datenbank erstellt wird (Abfrage)).

<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);

Erstellung eines zusammengesetzten Index für die Felder "@mail" und "@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);
recommendation-more-help
601d79c3-e613-4db3-889a-ae959cd9e3e1