Para tipos de destinos não relacionais, o PowerExchange e o PowerCenter permitem a limpeza de tabelas de destino antes de gravá-las em um fluxo de trabalho do PowerCenter.
Você pode limpar uma tabela de destino das seguintes formas:
Incluir o SQL para truncar a tabela no atributo de sessão
Pré-SQL
para a tabela de destino.
Selecionar a propriedade de sessão
Truncar Opção de Destino
para um destino VSAM que usa uma conexão do PWXPC.
Selecionar a propriedade
Truncar tabela de destino
para um destino não relacional que usa uma conexão do ODBC do PowerExchange.
Os dois primeiros tokens no SQL podem ser TRUNCATE TABLE ou DELETE FROM. Os tokens finais no SQL definem a tabela totalmente qualificada da qual é possível determinar o mapa de dados. Por exemplo, você pode usar uma das seguintes instruções:
TRUNCATE TABLE schema.
map
_
table
DELETE FROM schema.
map
_
table
Se você selecionar a propriedade de sessão
Truncar Opção de Destino
ou a propriedade do ODBC
Truncar tabela de destino
, o PowerExchange gerará uma instrução, que você não pode modificar, em um destes formatos.
O sistema carrega o mapa de dados da tabela e determina o tipo de mapa subjacente.
Para os tipos de mapa ESDS, KSDS, RRDS, SEQ ou TAPE, o arquivo definido no mapa de dados (ou substituído em tempo de execução) é aberto no modo de gravação e fechado, dessa forma, o conteúdo existente do arquivo é limpo. Esse método de limpeza de arquivos é útil porque, de outra forma, se nenhum dado for processado em um fluxo de trabalho, o arquivo de saída poderá incluir registros que foram mantidos de uma execução anterior. O PowerExchange adia a abertura dos arquivos de saída até a gravação dos dados reais.
O arquivo é sempre limpo inteiro. No caso dos arquivos com vários registros, é possível escolher qualquer um dos nomes de tabela, e os dados de todas as tabelas são limpos. Embora seja fisicamente possível limpar uma tabela individual de arquivos KSDS e RRDS, você não pode fazer isso definindo TRUNCATE TABLE ou DELETE FROM na propriedade de sessão
Pré-SQL
. Pode ser possível limpar parte de um arquivo KSDS usando DELETE SQL com uma cláusula WHERE executada como parte de um fluxo de trabalho, mas não definindo a instrução na propriedade de sessão
Pré-SQL
.
Não é permitida a limpeza de uma tabela de destino usando um desses métodos para outros tipos de mapa de dados.
Os conjuntos de dados do VSAM devem ser definidos com a opção REUSE para que o truncamento de tabela funcione corretamente.