Evaluación del DDL para su procesamiento

Obtenga información sobre el orden en el que se procesan los diferentes criterios de los parámetros de Oracle GoldenGate y las diferencias entre la forma en que Extract y Replicat procesan el DDL.

Extract 1. Extract captura una sentencia DDL.

  1. Extract separa los comentarios, si los hay, de la sentencia principal.

  2. Extract busca el parámetro DDL. (En este ejemplo, se supone que existe.)

  3. Extract busca el parámetro IGNOREREPLICATES. Si está presente y si Replicat ha producido este DDL en este sistema, Extract ignora la sentencia DDL. (En este ejemplo, no se asume ninguna operación de Replicat en este sistema).

  4. Extract determina si la sentencia DDL es RENAME. Si es así, el cambio de nombre se marca internamente.

  5. Extract obtiene el nombre del objeto base y, si está presente, el nombre del objeto derivado.

  6. Si la sentencia es RENAME, Extract la cambia a ALTER TABLE RENAME.

  7. Extract busca el parámetro DDLOPTIONS REMOVECOMMENTS BEFORE. Si está presente, Extract elimina los comentarios de la sentencia DDL, pero los almacena en caso de que haya una cláusula DDL INCLUDE o DDL EXCLUDE que utilice INSTR o INSTRCOMMENTS.

  8. Extract determina el ámbito DDL: MAPPED, UNMAPPED o OTHER:

    • Es MAPPED si la operación y los tipos de objeto están soportados para la asignación, y el nombre del objeto base y/o el nombre del objeto derivado (si RENAME) está en un parámetro TABLE.

    • Es UNMAPPED si la operación y los tipos de objeto no están soportados para la asignación y el nombre de objeto base y/o el nombre de objeto derivado (si RENAME) no está en un parámetro TABLE.

    • De lo contrario, la operación se identifica como OTHER.

  9. Extract comprueba el parámetro DDL para las cláusulas INCLUDE y EXCLUDE, y evalúa los criterios del parámetro DDL en esas cláusulas. Todas las opciones se deben evaluar en TRUE para que INCLUDE o EXCLUDE se evalúen en TRUE. Ocurrirá lo siguiente:

    • Si una cláusula EXCLUDE se evalúa como TRUE, Extract descarta la sentencia DDL y evalúa otra sentencia DDL. En este caso, los pasos de procesamiento comienzan de nuevo.

    • Si una cláusula INCLUDE se evalúa como TRUE o si el parámetro DDL no tiene ninguna cláusula INCLUDE o EXCLUDE, Extract incluye la sentencia DDL y la lógica de procesamiento continúa.

  10. Extract busca un parámetro DDLSUBST y evalúa las cláusulas INCLUDE y EXCLUDE. Si los criterios de esas cláusulas suman hasta TRUE, Extract realiza una sustitución de cadena. Extract evalúa la sentencia DDL en cada parámetro DDLSUBST del archivo de parámetros. Para todas las especificaciones DDLSUBST verdaderas, Extract realiza una sustitución de cadena en el orden en que los parámetros DDLSUBST se muestran en el archivo.

  11. Ahora que se ha procesado DDLSUBT, Extract busca el parámetro REMOVECOMMENTS AFTER. Si está presente, Extract elimina los comentarios de la sentencia DDL.

  12. Extraiga las búsquedas de DDLOPTIONS ADDTRANDATA. Si está presente y si la operación es CREATE TABLE, Extract ejecuta el comando ALTER TABLE name ADD SUPPLEMENTAL LOG GROUP en la tabla.

  13. Extract escribe la sentencia DDL en la pista.