Limpar funções de transformação do SQL

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 2 min. de leitura
  • Use as funções de transformação SQL de limpeza para escapar de caracteres especiais e impedir a injeção em cápsulas de dados de cadeia de caracteres a serem usadas para instruções SQL.

    As funções de transformação de limpeza do SQL exigem uma cápsula de dados de entrada de cadeia de caracteres. Certifique-se de usar o tipo de cápsula de dados de entrada correto ao aplicar funções de transformação de limpeza do SQL. Se uma função de transformação de limpeza do SQL for aplicada a um tipo de dados impróprio, os dados não serão transformados no tempo de execução e, em vez disso, o valor de entrada será retornado. Para obter mais informações sobre como confirmar os valores de tempo de execução do fluxo, consulte Testar um fluxo.

    Nota:
    Quando uma cápsula de dados é solta na entrada Instrução SQL para uma etapa JDBC, a categoria de função de transformação de limpeza do SQL é exibida automaticamente.

    Limpar identificador SQL

    Retorna uma cadeia de caracteres com caracteres especiais de escape/valores injetados para identificadores SQL (como nomes de tabela, exibição e coluna). Encapsula a cadeia de caracteres de entrada entre aspas específicas do banco de dados.

    Cápsula de dados de entrada Parâmetros Cápsula de dados de saída
    Cadeia de caracteres Database - O contexto específico do banco de dados no qual os caracteres têm escape. As opções incluem MySQL, Oracle, PostgreSQL e Microsoft SQL Server. Cadeia de caracteres: cadeia de caracteres com identificadores SQL com escape adequado com base no banco de dados selecionado.
    Figura 1. Exemplo
    • Entrada: simple_column
    • Banco de dados: MySQL
    • Saída: “simple_column”
    Nota:
    • Se a cadeia de caracteres de entrada contiver um caractere de ponto, Limpar identificador SQL retornará um erro. Para ingressar identificadores SQL usando um ponto final, use duas cápsulas de dados concatenadas com um ponto final e aplique Limpar identificador SQL em ambas as cápsulas.
    • Não coloque a cápsula de dados de entrada entre aspas. O sistema envolve automaticamente o valor de entrada com o tipo de aspas ou backticks que se aplicam ao seu tipo de banco de dados.

    Limpar valor de SQL

    Retorna uma cadeia de caracteres com caracteres especiais de escape ou valores injetados para valores SQL. Encapsula a cadeia de caracteres de entrada entre aspas específicas do banco de dados.
    Cápsula de dados de entrada Parâmetros Cápsula de dados de saída
    Cadeia de caracteres Database - O contexto específico do banco de dados no qual os caracteres têm escape. As opções incluem MySQL, Oracle, PostgreSQL e Microsoft SQL Server. Cadeia de caracteres: cadeia de caracteres com valores SQL com escape adequado com base no banco de dados selecionado.
    Figura 2. Exemplo
    • Entrada: '1'='1
    • Banco de dados: SQLServer
    • Saída: ''1''=''1'
    Nota:
    Não coloque a cápsula de dados de entrada entre aspas. O sistema envolve automaticamente o valor de entrada com o tipo de aspas ou backticks que se aplicam ao seu tipo de banco de dados.