EXCHANGE sentencia
La sentencia EXCHANGE intercambia el contenido de una tabla base y su tabla clonada asociada.
Invocación para EXCHANGE
Esta sentencia puede incorporarse en un programa de aplicación o emitirse de forma interactiva. Es una instrucción ejecutable que puede prepararse dinámicamente solo si el comportamiento DYNAMICRULES RUN está activo. Para obtener más información, consulte ID de autorización y SQL dinámico.
Autorización para EXCHANGE
El conjunto de privilegios que se define a continuación debe incluir al menos uno de los siguientes privilegios:
- Los privilegios INSERT y DELETE tanto en la tabla base como en la tabla clonada
- Propiedad tanto de la tabla base como de la tabla clonada
- Autoridad DBADM para la base de datos
- Autorización SYSADM
- Autorización DATAACCESS
Conjunto de privilegios:
Si la sentencia está incrustada en un programa de aplicación, el conjunto de privilegios son los privilegios que tiene el propietario del plan o paquete. Si el estado se prepara dinámicamente, el conjunto de privilegios es la unión de los conjuntos de privilegios que posee cada ID de autorización del proceso.
Sintaxis para EXCHANGE
descripción para EXCHANGE
- table-name1 y table-name2
- Identifica la tabla base y la tabla clon asociada para las que tendrá lugar el intercambio de datos. Ya sea table-name1 o table-name2 pueden identificar la tabla base. El otro nombre de tabla debe identificar una tabla clonada que esté asociada con la tabla base especificada. El nombre de la tabla base y el nombre de la tabla clonada permanecen sin cambios después de un intercambio de datos.
Notas para EXCHANGE
- Comprometerse después del INTERCAMBIO
Se requiere un commit antes de acceder a una tabla después de la sentencia EXCHANGE y entre intercambios de datos consecutivos utilizando la sentencia EXCHANGE.
- Particiones de tabla
- Los intercambios de datos no pueden realizarse para un subconjunto de particiones de tablas.
Es posible que sea necesario rebobinar los paquetes
Es posible que tenga que volver a vincular los paquetes que hacen referencia a las tablas base o clónicas antes de que las aplicaciones puedan recoger los datos intercambiados. Para más información, consulte Cambios que pueden requerir rebinds de paquetes.
Ejemplo para EXCHANGE
EXCHANGE DATA BETWEEN TABLE EMPCLONE AND EMPLOYEE;