Esquema de base de datos de HCL Commerce

El modelo de base de datos de HCL Commerce se ha diseñado para la integridad de los datos y para un rendimiento óptimo. HCL Commerce proporciona varios cientos de tablas que almacena datos de instancia HCL Commerce. Para mantener la integridad de los datos y facilitar el mantenimiento de la integridad referencial, se utilizan comúnmente restricciones en el modelo de base de datos. En las tablas, los índices se utilizan con precaución para evitar el sobreindexado y para proporcionar un equilibrio correcto entre las actividades de recuperación de datos y las de manipulación de datos (insertar y actualizar). Las reglas de negocio se implementan a nivel de aplicación, en vez de utilizar un desencadenante de base de datos. No obstante, los desencadenantes se utilizan para facilitar la transición de los datos y el bloqueo optimista. Un número limitado de procedimientos almacenados de base de datos basados en SQL se utilizan para las actividades de uso intensivo de datos.

Puede ampliar el esquema y en la sección siguiente se listan las extensiones soportadas para el esquema de HCL Commerce:

Tablas

Puede cambiar las propiedades físicas de una tabla de base de datos, tales como el espacio de tabla o un cambio de propiedad física. Para dar soporte a las nuevas entidades JPA, o a las páginas JSP, se pueden añadir nuevas tablas. Cuando añada una tabla, tenga en cuenta el bloqueo optimista. Después de migrar a un nuevo release de HCL Commerce, deberá volver a aplicar todas las tablas personalizadas.

No elimine ni cambie el nombre de una tabla existente. Esta acción puede causar problemas de migración y de rotura de código.

Si su esquema de base de datos incluye tablas personalizadas y el sitio da soporte a los espacios de trabajo, asegúrese de que las tablas personalizadas se sincronicen entre el esquema base y el esquema de espacio de trabajo. Sincronice las tablas después de modificar una tabla en el entorno de autoría como, por ejemplo, para cambiar una columna o un índice, y cuando cree una tabla, independientemente de si la tabla nueva o modificada está gestionada por contenido. Utilice la tarea Ant adecuada para sincronizar el esquema base y el esquema de espacio de trabajo. Puede ejecutar la tarea de actualización de esquema de espacio de trabajo cuando cambie el esquema base como, por ejemplo, para incluir una nueva tabla, o puede ejecutar la tarea de actualización de tabla de espacio de trabajo cuando cambie solo una tabla como, por ejemplo, cuando modifique una columna. Para obtener más información, consulte los temas siguientes:

Columnas

Puede aumentar el tamaño de una columna o cambiar el tipo de datos a otro tipo compatible. Puede haber un impacto en el rendimiento si se aumenta el tamaño de la columna.

Para personalizarla, emita las sentencias DDL y luego cambie todas las páginas JSP que utilizan la columna. Es posible que sea necesario mover los datos, por ejemplo, DB2 long a CLOB.

No se da soporte a los cambios siguientes en columnas:

  • Cambiar el tipo de datos de una columna a un tipo no compatible
  • Añadir una columna
  • Eliminar una columna
  • Redenominar una columna.

Las columnas que llevan el prefijo " UP_ " son columnas que se generan automáticamente para las bases de datos DB2, para dar soporte a búsqueda de Management Center, que no distingue entre mayúsculas y minúsculas. Estas columnas con prefijo son copias directas de las columnas sin prefijo de referencia, pero con el contenido de la columna con prefijo en todos los caracteres en mayúsculas para utilizarlos en búsquedas sin distinción entre mayúsculas y minúsculas. No edite estas columnas con prefijo, ni su contenido. Si el contenido de la columna con prefijo y sin prefijo no coincide, se genera un error.

Claves primarias y externas

Se pueden añadir claves foráneas entre una tabla personalizada nueva y una tabla existente, o entre dos tablas personalizadas. La condición de supresión en cascada se puede modificar. Si no se utilizan las tablas, se pueden eliminar las claves foráneas existentes.

No se permite realizar las acciones siguientes:

  • Cambiar claves primarias
  • eliminar claves primarias
  • Cambiar claves foráneas existentes
  • Añadir nuevas claves foráneas entre tablas existentes

Índices

Se da soporte a los cambios siguientes

  • Añadir nuevos índices.
  • Alterar un índice existente
    • Añadir una columna o más al final.
    • Eliminar una columna o más.
  • Eliminar un índice existente.
    Nota: Si elimina un índice, puede que se genere un problema de rendimiento de base de datos cuando añada a su sitio arreglos o funciones nuevos. Cuando aplique un paquete de mantenimiento, puede introducir nuevas consultas de base de datos que se basen en el índice eliminado en la instancia. Si el índice no se encuentra en su lugar, el rendimiento de las consultas se puede ver afectado negativamente. Cuando descarta un índice, asegúrese de supervisar atentamente el rendimiento de la base de datos tras aplicar un paquete de mantenimiento. Si el rendimiento de la base de datos se ve afectado negativamente, contemple la posibilidad de añadir el índice descartado de nuevo en la tabla adecuada.

No se permite realizar las acciones siguientes:

  • Añadir índices exclusivos
  • Cambiar la exclusividad
  • Funciones en columnas e índices.
  • Sobreindexado
Nota: El nombre de clave primaria para las tablas puede ser generado por el sistema. Si este nombre es generado por el sistema, se muestra en las descripciones de tabla de base de datos en el siguiente formato:
  • <SYSTEM-GENERATED>
Anteriormente, los nombres que generaba el sistema se visualizaban en uno de estos formatos:
  • DB2SQL<integer>
  • OracleSYS_C<integer>

Desencadenantes

Puede personalizar los desencadenantes utilizando sentencias DDL y lenguaje de procedimientos de base de datos. Cualquier personalización de los desencadenantes puede tener un impacto en el rendimiento, ya que los nuevos desencadenantes pueden ralentizar las sentencias DDL en otras tablas.

Se pueden añadir desencadenantes adicionales de transición, rendimiento y de auditoría de negocio.

No se permite realizar las acciones siguientes:

  • Cambiar desencadenantes existentes
  • Cambiar la temporización
  • Eliminar desencadenantes existentes

Procedimientos almacenados

Puede añadir nuevos procedimientos almacenados para el código personalizado.

No se permite realizar las acciones siguientes:

  • Cambiar un procedimiento existente
  • Añadir un procedimiento almacenado al código existente
  • Eliminar un procedimiento de servicio existente

Funciones

El esquema de HCL Commerce no contiene ninguna función personalizada. No se da soporte a las funciones personalizadas.

Puede añadir funciones de columna como, por ejemplo, AVG, Max y Min.