>  기사  >  백엔드 개발  >  Go를 사용하여 SQL 쿼리의 문자열을 안전하게 연결하는 방법은 무엇입니까?

Go를 사용하여 SQL 쿼리의 문자열을 안전하게 연결하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-31 21:47:01934검색

How to Safely Concatenate Strings in SQL Queries with Go?

Go의 SQL 쿼리에서 문자열 연결

텍스트 SQL 쿼리는 데이터베이스 쿼리를 위한 간단한 방법을 제공하지만 문자열 리터럴을 값과 연결하는 올바른 접근 방식을 이해하는 것이 중요합니다. 구문 오류 및 유형 불일치를 방지합니다.

제공된 쿼리 구문:

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

Python 스타일 튜플 사용으로 인해 구문 오류가 발생합니다. 대신 fmt.Sprintf를 사용하여 문자열과 값을 연결하세요.

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

또는 db.Query를 사용하여 문자열 보간 없이 문자열을 연결할 수 있습니다.

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

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

주입을 해결하는 것을 기억하세요 문자열 보간 대신 준비된 문을 사용하여 취약점을 제거합니다.

위 내용은 Go를 사용하여 SQL 쿼리의 문자열을 안전하게 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.