elemento dbindex

Modelo de contenido

dbindex:==keyfield

Atributos

  • @_operation (string)
  • @applyIf (cadena)
  • @label (cadena)
  • @name (MNTOKEN)
  • @unique (booleano)

Padres

<element>

Niños

<keyfield>

Descripción

Este elemento permite definir un índice vinculado a una tabla.

Uso y contexto de uso

Es posible definir varios índices. Un índice puede hacer referencia a uno o varios campos de la tabla. La declaración de índice suele seguir la definición del elemento de esquema principal.

El orden de los elementos <keyfield> definidos en <dbindex> es muy importante. El primer <keyfield> debe ser el criterio de indización en el que se basan principalmente las consultas.

El nombre del índice de la base de datos se calcula concatenando el nombre de la tabla y el nombre del índice. Por ejemplo: Nombre de tabla "Sample", Área de nombres "Cus", nombre de índice "MyIndex"-> nombre del campo de índice durante la consulta de creación de índice: "CusSample_myIndex".

Descripción del atributo

  • _operation (string): define el tipo de escritura en la base de datos.

    Este atributo se utiliza principalmente al ampliar los esquemas predeterminados.

    Los valores accesibles son:

    • "ninguno": sólo reconciliación. Esto significa que Adobe Campaign recuperará el elemento sin actualizarlo ni generar un error si no existe.
    • "insertOrUpdate": actualizar con inserción. Esto significa que Adobe Campaign actualizará el elemento o lo creará si no existe.
    • "insertar": inserción. Esto significa que Adobe Campaign insertará el elemento sin comprobar si existe.
    • "update": actualizar. Esto significa que Adobe Campaign actualizará el elemento o generará un error si no existe.
    • "delete": eliminación. Esto significa que Adobe Campaign recuperará y eliminará los elementos.
  • applyIf (string): condición para tener en cuenta el índice: recibe una expresión XTK.

  • label (string): etiqueta de índice.

  • name (MNTOKEN): nombre de índice único.

  • unique (booleano): si esta opción está activada (@unique="true"), el atributo garantiza la exclusividad del índice en todos sus campos.

Ejemplos

Creación de un índice en el campo "id". (el atributo "@unique" en los déclencheur del elemento <dbindex> que agregan la palabra clave SQL "ÚNICA" cuando se crea el índice en la base de datos (consulta)).

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

Creación de un índice compuesto en los campos "@mail" y "@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);

En esta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
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