�ܶ����������ݿⶼ֧��Ԥ�������ĸ��ʲô��Ԥ������䣿��������������Ҫ���е� SQL ��һ�ֱ������ģ�壬������ʹ�ñ����������ж��ơ�Ԥ���������Դ�������ô���
Ԥ�������������ã�����������Ψһ������������������֧�ֵ�ʱPDO ��ģ�����������ȷ���������ݿ��Ƿ���������Ĺ��ܣ�������ȷ��Ӧ�ó����������ͬ�����ݷ���ģʽ��
Example #1 ��Ԥ�����������ظ�����
��������ͨ���� name �� value �����Ӧ������ռλ����ִ��һ�������ѯ
<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (:name, :value)");
$stmt->bindParam(':name', $name);
$stmt->bindParam(':value', $value);
// ����һ��
$name = 'one';
$value = 1;
$stmt->execute();
// �ò�ͬ��ֵ������һ��
$name = 'two';
$value = 2;
$stmt->execute();
?>
Example #2 ��Ԥ�����������ظ�����
��������ͨ���� name �� value ȡ�� ? ռλ����λ����ִ��һ�������ѯ��
<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (?, ?)");
$stmt->bindParam(1, $name);
$stmt->bindParam(2, $value);
// ����һ��
$name = 'one';
$value = 1;
$stmt->execute();
// �ò�ͬ��ֵ������һ��
$name = 'two';
$value = 2;
$stmt->execute();
?>
Example #3 ʹ��Ԥ��������ȡ����
�������ӻ�ȡ���ݻ��ڼ�ֵ���ṩ����ʽ���û������뱻�Զ�����������������˲����� SQL ע�빥����Σ�ա�
<?php
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = ?");
if ($stmt->execute(array($_GET['name']))) {
while ($row = $stmt->fetch()) {
print_r($row);
}
}
?>
������ݿ�����֧�֣�Ӧ�ó�����������������.�������ͨ�����ڴӴ洢���̻�ȡֵ���������ʹ���������������Ҫ������һЩ����Ϊ����һ���������ʱ������֪�����������ij��ȡ����Ϊ������ֵ���ڽ���ij��ȣ��ͻ����һ������
Example #4 ������������ô洢����
<?php
$stmt = $dbh->prepare("CALL sp_returns_string(?)");
$stmt->bindParam(1, $return_value, PDO::PARAM_STR, 4000);
// ���ô洢����
$stmt->execute();
print "procedure returned $return_value\n";
?>
������ָ��ͬʱ������������ֵ�IJ���������������������������һ�������У��ַ���"hello"�����ݸ��洢���̣����洢���̷���ʱ��hello ���滻Ϊ�ô洢���̷��ص�ֵ��
Example #5 ������/����������ô洢����
<?php
$stmt = $dbh->prepare("CALL sp_takes_string_returns_string(?)");
$value = 'hello';
$stmt->bindParam(1, $value, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 4000);
// ���ô洢����
$stmt->execute();
print "procedure returned $value\n";
?>
Example #6 ռλ������Чʹ��
<?php
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name LIKE '%?%'");
$stmt->execute(array($_GET['name']));
// ռλ�����뱻��������ֵ��λ��
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name LIKE ?");
$stmt->execute(array("%$_GET[name]%"));
?>