Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle sqlldr:coluna não permitida aqui


BLANKS é uma palavra-chave do SQL*Loader, não algo que você pode usar dentro de um decode Instrução SQL - está tratando-a como um nome de coluna. Se realmente for uma string vazia (comprimento zero), como pode ser o caso de um arquivo delimitado, no decode você pode usar '' em vez de BLANKS; mas a Oracle trata isso como nulo de qualquer maneira. Nesse caso, o decode deve ser redundante e você pode simplesmente usar um NULLIF como você tem para as outras colunas. Se a string 'vazia' for na verdade um ou mais espaços, você pode fazer algo como decode(TRIM(:PRIORITY),'',NULL,'\\N',NULL,:PRIORITY) . (Você precisaria da cláusula padrão final para o decode de qualquer maneira ou todos os valores iriam para null.)