Lembre-se uma vez ORA-00909: número inválido de parâmetros

Hoje, quando estava adicionando condições de consulta a um sql durante o desenvolvimento, encontrei ORA-00909: O número de parâmetros é inválido e um erro foi relatado. Então verifiquei o sql e descobri que não havia problema com os parâmetros. Então eu mesmo verifiquei as informações e descobri que se houvesse um erro de ortografia na instrução SQL, esse erro também seria relatado.

Mais tarde, de repente percebi que era meu problema de ortografia SQL, porque eu já estava usando o mysql para desenvolver antes. Ao usar a função CONCAT para unir a narração difusa, era sempre CONCAT('%',?,'%') escrito diretamente assim, mas lembrei que o Oracle não suporta. Para escrever desta forma, você precisa reescrever CONCAT('%',?,'%') em CONCAT(CONCAT('%',?),'%' ), porque a função CONCAT no Oracle só pode processar duas strings por vez. Para emenda, se houver mais de duas, um erro será relatado. Registrarei meu relatório de erros e espero que seja útil para amigos que também enfrentam esse problema.

Acho que você gosta

Origin blog.csdn.net/qq_40647372/article/details/135966355
Recomendado
Clasificación