Datenbank-Mapping database-mapping

Auf dieser Seite wird beschrieben, wie Indizes für die Felder eines Schemas deklariert werden.

Im Zuge der Umstellung von Campaign v7 auf v8 wurde der Campaign Classic-Dokumentationssatz optimiert und neu organisiert. Allgemeine Funktionen sind jetzt nur noch in der Dokumentation zu Campaign v8 verfügbar. Weitere Informationen zur SQL-Zuordnung von Schemata finden Sie in der ​ zu Campaign v8.

Bild

Indizierte Felder indexed-fields

Mit Indizes können Sie die Leistung der in der Anwendung verwendeten SQL-Abfragen optimieren.

Ein Index wird aus dem Hauptelement des Datenschemas deklariert.

<dbindex name="name_of_index" unique="true/false">
  <keyfield xpath="xpath_of_field1"/>
  <keyfield xpath="xpath_of_field2"/>
  ...
</key>

Indizes befolgen die folgenden Regeln:

  • Ein Index kann auf ein oder mehrere Felder in der Tabelle verweisen
  • Ein Index kann in allen Feldern eindeutig sein (um Duplikate zu vermeiden), wenn das Attribut unique den Wert „true“ enthält
  • Der SQL-Name des Index wird aus dem SQL-Namen der Tabelle und dem Namen des Index bestimmt
NOTE
  • Standardmäßig sind Indizes die ersten Elemente, die über das Hauptelement des Schemas deklariert werden.

  • Indizes werden während der Tabellenzuordnung automatisch erstellt (Standard oder FDA).

Beispiel:

  • Hinzufügen eines Index zur E-Mail-Adresse und zum Ort:

    code language-sql
    <srcSchema name="recipient" namespace="cus">
      <element name="recipient">
        <dbindex name="email">
          <keyfield xpath="@email"/>
          <keyfield xpath="location/@city"/>
        </dbindex>
    
        <attribute name="email" type="string" length="80" label="Email" desc="Email address of recipient"/>
        <element name="location" label="Location">
          <attribute name="city" type="string" length="50" label="City" userEnum="city"/>
        </element>
      </element>
    </srcSchema>
    
  • Hinzufügen eines eindeutigen Index zum Namensfeld „id“:

    code language-sql
    <srcSchema name="recipient" namespace="cus">
      <element name="recipient">
        <dbindex name="id" unique="true">
          <keyfield xpath="@id"/>
        </dbindex>
    
        <dbindex name="email">
          <keyfield xpath="@email"/>
        </dbindex>
    
        <attribute name="id" type="long" label="Identifier"/>
        <attribute name="email" type="string" length="80" label="Email" desc="Email address of recipient"/>
      </element>
    </srcSchema>
    

Weitere Informationen

Weitere Informationen finden Sie unter den folgenden Links:

recommendation-more-help
campaign-classic-help