"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como concatenar strings com segurança em consultas SQL com Go?

Como concatenar strings com segurança em consultas SQL com Go?

Publicado em 2024-11-03
Navegar:251

How to Safely Concatenate Strings in SQL Queries with Go?

Concatenando strings em consultas SQL em Go

Embora as consultas SQL de texto ofereçam um método direto para consultar bancos de dados, é crucial entender a abordagem correta para concatenar literais de string com valores para evitar erros de sintaxe e incompatibilidades de tipo.

A sintaxe de consulta fornecida:

query := `SELECT column_name FROM table_name
        WHERE column1_name = %d AND column2_name = %d` % (val1, val2)

resulta em um erro de sintaxe devido ao uso de tuplas no estilo Python. Em vez disso, use fmt.Sprintf para concatenar a string e os valores:

query := fmt.Sprintf(`SELECT column_name FROM table_name
                     WHERE column1_name = %d AND column2_name = %d`, val1, val2)

Como alternativa, você pode usar db.Query para concatenar strings sem interpolação de string:

query := `SELECT column_name FROM table_name
        WHERE column1_name = %d AND column2_name = %d`

rows, err := db.Query(query, val1, val2)

Lembre-se de resolver vulnerabilidades de injeção usando instruções preparadas em vez de interpolação de string.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3