SQL - SQLCODE's - Códigos negativos -20524


Volta a página anterior

Volta ao Menu Principal


Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

SQLCode -20524

   
 
Db2 for z/OS 12.0.0 - SQL error codes

  • Causa
    • INVALID PERIOD SPECIFICATION OR PERIOD CLAUSE FOR PERIOD period-name.
      REASON CODE = reason-code.

      Uma especificação de período ou cláusula de período é inválida.
      period-name
      O período que é inválido.

      reason-code
      Um valor numérico que indica porque o período é inválido:
      1. O nome do período foi especificado mais de uma vez para a referência da tabela.

      2. O período SYSTEM_TIME foi especificado, mas a tabela não é uma tabela temporal de período do sistema.

      3. period-name violou o seguinte requisito: cada expressão deve retornar um valor de um tipo de dados integrado e pode conter qualquer um dos seguintes operandos suportados:
        • Uma constante
        • Um registro especial
        • Uma variável, que pode ser uma variável de host, uma variável SQL, um parâmetro SQL, uma variável de transição ou uma variável global
        • Um marcador de parâmetro
        • Uma especificação CAST, em que o operando cast é um operando com suporte
        • Uma expressão que usa operadores aritméticos e operandos
        • Uma função escalar cujos argumentos são operandos suportados (invocações de funções aninhadas não são permitidas).

        Essas regras têm as seguintes exceções:
        • Uma especificação de período ou cláusula de período para uma exibição não deve conter um marcador de parâmetro sem tipo.
        • A expressão de origem das instruções SET CURRENT TEMPORAL BUSINESS_TIME e SET CURRENT TEMPORAL SYSTEM_TIME não deve conter um marcador de parâmetro ou uma variável de transição.

      4. A especificação de período ou cláusula de período foi especificada para uma visão onde a definição da visão inclui uma função definida pelo usuário.

      5. A precisão de uma expressão deve ser maior que a precisão das colunas do período.
        Se a expressão for uma string, ela será primeiro convertida em um carimbo de data/hora e o valor não deve conter mais dígitos fracionários de segundos significativos do que a precisão da coluna.

      6. FOR SYSTEM_TIME foi especificado.
        No entanto, o valor do registro especial CURRENT TEMPORAL SYSTEM_TIME não é nulo e a opção de ligação SYSTIMESENSITIVE é definida como YES.
        Portanto, você também não pode especificar explicitamente FOR SYSTEM_TIME.

      7. FOR BUSINESS_TIME foi especificado.
        No entanto, o valor do registro especial CURRENT TEMPORAL BUSINESS_TIME não é nulo e a opção de ligação BUSTIMESENSITIVE é definida como YES.
        Portanto, você também não pode especificar explicitamente FOR BUSINESS_TIME.

      8. A especificação do período ou cláusula de período foi especificada para um dos seguintes itens:
        • Uma tabela que não é uma tabela temporal de período de aplicação
        • Uma exibição para a qual uma tabela temporal de período do aplicativo não é referenciada na cláusula FROM mais externa da definição de exibição ou um gatilho INSTEAD OF é definido na exibição.

      9. Uma expressão não deve retornar um valor com fuso horário se as colunas inicial e final do período especificado forem definidas como carimbo de data / hora sem fuso horário.
  • Ação do sistema
    • A declaração não pode ser processada.
  • Resposta ao Desenvolvedor
    • Corrija a sintaxe e reenvie a instrução.

      SQLSTATE: 428HY
© Copyright IBM Corp.