下面是PHP如何初始化PDO及原始SQL语句操作的完整攻略以及两个示例说明。
初始化PDO
使用PDO连接MySQL需要以下步骤:
- 首先创建一个PDO对象,并传入数据库连接信息。
try {
$pdo = new PDO('mysql:host=localhost;dbname=mydatabase;charset=utf8', 'username', 'password');
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
- PDO支持预处理语句,需要通过PDO::prepare()方法来预处理SQL语句,创建一个预处理对象。
原始SQL语句操作
在使用PDO执行SQL语句时,需要遵循以下基本步骤:
- 初始化PDO对象,并连接到数据库。
try {
$pdo = new PDO('mysql:host=localhost;dbname=mydatabase;charset=utf8', 'username', 'password');
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
- 拼接SQL语句字符串。
$sql = 'SELECT * FROM `mytable` WHERE `name` = ? AND `age` > ?';
- 使用PDO::prepare()方法创建PDOStatement对象,并将预处理语句字符串作为参数传入。
$statement = $pdo->prepare($sql);
- 绑定参数。
$name = 'Bob';
$age = 18;
$statement->bindParam(1, $name, PDO::PARAM_STR);
$statement->bindParam(2, $age, PDO::PARAM_INT);
- 执行查询。
$statement->execute();
- 获取结果集。
$rows = $statement->fetchAll(PDO::FETCH_ASSOC);
foreach ($rows as $row) {
// 处理每一行数据
}
示例1:查询数据并输出
try {
$pdo = new PDO('mysql:host=localhost;dbname=mydatabase;charset=utf8', 'username', 'password');
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
$sql = 'SELECT * FROM `mytable` WHERE `name` = ? AND `age` > ?';
$statement = $pdo->prepare($sql);
$name = 'Bob';
$age = 18;
$statement->bindParam(1, $name, PDO::PARAM_STR);
$statement->bindParam(2, $age, PDO::PARAM_INT);
$statement->execute();
$rows = $statement->fetchAll(PDO::FETCH_ASSOC);
foreach ($rows as $row) {
echo $row['name'] . ' - ' . $row['age'] . '<br />';
}
示例2:更新数据
try {
$pdo = new PDO('mysql:host=localhost;dbname=mydatabase;charset=utf8', 'username', 'password');
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
$sql = 'UPDATE `mytable` SET `age` = `age` + 1 WHERE `name` = ?';
$statement = $pdo->prepare($sql);
$name = 'Bob';
$statement->bindParam(1, $name, PDO::PARAM_STR);
$statement->execute();
$count = $statement->rowCount();
echo 'Success! ' . $count . ' rows affected.';
以上就是PHP如何初始化PDO及原始SQL语句操作的完整攻略,希望能对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP如何初始化PDO及原始SQL语句操作 - Python技术站