
bindParam를 사용할 때, 파라미터를 바인딩하는 순서는 SQL 쿼리에서 파라미터를 사용하는 순서와 동일합니다. 예를 들어, SQL 쿼리가 다음과 같다면, 파라미터를 바인딩하는 순서는 다음과 같습니다.
#hostingforum.kr
php
$stmt = $db->prepare("SELECT * FROM users WHERE id = ? AND name = ?");
$stmt->bindParam(1, $id);
$stmt->bindParam(2, $name);
bindParam를 사용할 때, 파라미터 타입을 지정하는 방법은 없습니다. SQLite는 자동으로 파라미터 타입을 인식합니다. 예를 들어, INT 타입의 파라미터를 바인딩하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$stmt = $db->prepare("SELECT * FROM users WHERE id = ?");
$id = 1;
$stmt->bindParam(1, $id);
VARCHAR 타입의 파라미터를 바인딩하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$stmt = $db->prepare("SELECT * FROM users WHERE name = ?");
$name = 'John';
$stmt->bindParam(1, $name);
또한, bindParam 대신 bindValue를 사용할 수 있습니다. bindValue는 bindParam과 유사하지만, 파라미터 타입을 지정할 수 없습니다.
#hostingforum.kr
php
$stmt = $db->prepare("SELECT * FROM users WHERE id = ?");
$id = 1;
$stmt->bindValue(1, $id);
2025-04-09 03:43