복붙노트

[SQL] 쿼리를 작성하는 문자열 연결을 피

SQL

쿼리를 작성하는 문자열 연결을 피

엔터프라이즈 애플리케이션 아키텍처의 그의 책 패턴 마틴 파울러는 말한다

내가 쿼리의 실제 데이터에서 추상화, 자주 내 SQL 쿼리의 구문을 사용하는 방법입니다.

이 나쁜 연습 간주됩니다 왜 나를 설명 할 수 있습니까?

해결법

  1. ==============================

    1.당신이 그것을 컴파일하기 전에 문자열 연결에 의해 준비된 문을 작성 쓰임새가있을 수도 있지만, 그것은 두 가지 이유 문자열 연결을 사용하여 쿼리 매개 변수를 삽입하는 나쁜 관행은 항상 :

    당신이 그것을 컴파일하기 전에 문자열 연결에 의해 준비된 문을 작성 쓰임새가있을 수도 있지만, 그것은 두 가지 이유 문자열 연결을 사용하여 쿼리 매개 변수를 삽입하는 나쁜 관행은 항상 :

    그리고 누군가가 userid_param 포함 보내는 상상 " 'OR 1 = 1;"...

    유일한 방법은 방어하기 위해이 방법을 사용하는 언어에 따라 제대로하는 것은 매우 어려울 수 있습니다 100 % 정확한 입력 위생을 다하고 있습니다. 제대로 구현 드라이버와 함께 준비된 문을 사용하는 경우 드라이버는 아무것도 혼합되지 않도록 문은 쿼리 매개 변수를 형성 분리됩니다.

  2. from https://stackoverflow.com/questions/28473476/avoid-string-concatenation-to-create-queries by cc-by-sa and MIT license