| |
Db2 for z/OS 12.0.0 - SQL error codes
- Causa
- TABLE table-name WAS SPECIFIED AS AN ARCHIVE TABLE, BUT THE TABLE DEFINITION IS NOT VALID FOR AN ARCHIVE TABLE.
REASON CODE = reason-code.
Uma instrução ALTER TABLE tentou definir uma tabela como uma tabela de arquivo, mas a definição da tabela não é válida.
- table-name
- O nome da tabela que foi especificada para ser uma tabela de arquivo.
- reason-code
- Um valor numérico que identifica o motivo do erro. código-razão pode ter um dos seguintes valores:
- A tabela é uma tabela de arquivo existente ou um dos seguintes tipos de tabelas:
- Tabela habilitada para arquivamento.
A tabela foi definida como uma tabela habilitada para arquivamento por uma instrução anterior, ou a instrução atual define a tabela como uma
tabela habilitada para arquivamento.
- Tabela temporal do período do sistema.
- Tabela de histórico.
- Tabela temporária global declarada.
- Tabela temporária global criada.
- Tabela de consulta materializada.
- Visão
- Tabela auxiliar.
- Tabela clone.
- Tabela com um clone definido nela.
- Tabela que foi criada implicitamente para uma coluna XML.
Nenhuma dessas tabelas pode ser definida como uma tabela de arquivo.
- A tabela possui uma definição de tabela incompleta.
- A tabela não é a única tabela no espaço de tabela.
Uma tabela de archive deve ser a única tabela no espaço de tabela.
- A tabela contém uma coluna de identidade, uma coluna de início de linha, uma coluna de final de linha, uma coluna de ID de início de transação
ou uma coluna de expressão gerada.
As tabelas de arquivo não podem conter nenhuma dessas colunas.
- A tabela inclui uma definição de período, o que não é permitido para uma tabela de arquivo.
- A tabela está envolvida em uma restrição de integridade referencial, que não é permitida para uma tabela de arquivo.
- A tabela de archive não possui o mesmo número de colunas que a tabela que será usada como a tabela habilitada para archive.
Ambas as tabelas devem ter o mesmo número de colunas.
- A tabela contém uma coluna de rótulo de segurança, o que não é permitido em uma tabela de archive.
- A tabela não tem uma coluna ROWID para corresponder à da tabela que será usada como a tabela habilitada para arquivamento.
Se a tabela habilitada para arquivamento tiver uma coluna ROWID, a coluna da tabela de arquivamento correspondente deve ser uma coluna ROWID
com o atributo GENERATED ALWAYS.
- Um dos seguintes atributos de coluna não corresponde ao atributo da coluna correspondente na tabela que deve ser usada como a tabela habilitada
para arquivamento:
- Nome
- Tipo de dados
- Comprimento do tipo de dados (excluindo comprimento de LOB em linha ou comprimento de XML na tabela base), precisão e escala
- Atributo nulo
- Atributo oculto
- Procedimento de campo
- Atributo FOR BIT, SBCS ou MIXED DATA
- CCSID
Esses atributos para as colunas correspondentes de uma tabela habilitada para arquivamento e a tabela de arquivamento associada devem ser os
mesmos.
- A tabela tem uma máscara de coluna ou permissão de linha, nenhuma das quais é permitida para uma tabela de arquivo.
- A tabela não possui uma coluna de registro de data e hora de alteração de linha para corresponder àquela na tabela que será usada como a tabela
habilitada para arquivamento.
Se a tabela ativada para archive tiver uma coluna de registro de data e hora de alteração de linha, a coluna da tabela de archive
correspondente deve ser uma coluna de registro de data e hora de alteração de linha com o atributo GENERATED ALWAYS.
- Ação do sistema
- A declaração não pode ser processada.
- Resposta ao Desenvolvedor
- Corrija a sintaxe e reenvie a instrução.
SQLSTATE: 428HX
© Copyright IBM Corp.
|
| |