
pg_query_params 함수는 SQL 쿼리 문자열에 변수를 직접 포함하여 동적으로 쿼리를 실행할 수 있습니다. 이 함수는 SQL 인젝션 공격을 방지하기 위해 변수를 명시적으로 정의하는 과정을 자동으로 수행합니다.
pg_query_params 함수의 첫 번째 인자는 SQL 쿼리 문자열을 받는데, 이 문자열 안에 변수를 사용하여 동적으로 쿼리를 실행할 수 있습니다. 예를 들어, 다음과 같이 쿼리를 작성할 수 있습니다.
#hostingforum.kr
sql
SELECT * FROM users WHERE name = $1 AND age = $2;
이 쿼리에서 $1과 $2는 변수를 나타내며, pg_query_params 함수의 두 번째 인자로 변수의 값을 전달해야 합니다.
#hostingforum.kr
sql
PREPARE query(text) AS SELECT * FROM users WHERE name = $1 AND age = $2;
EXECUTE query('John', 25);
위 예제에서 'John'과 25는 변수의 값을 전달하는 예입니다. pg_query_params 함수는 이러한 변수를 명시적으로 정의하여 SQL 인젝션 공격을 방지합니다.
따라서, pg_query_params 함수를 사용하여 쿼리를 실행하는 경우, 변수를 명시적으로 정의하는 과정을 자동으로 수행하므로, 별도의 변수 정의 과정이 필요하지 않습니다.
2025-07-13 13:58