PHP PDO est un composant important de l'extension de base de données PHP. Il fournit une API unifiée pour PHP et diverses bases de données relationnelles. L'utilisation de PDO peut rendre nos programmes plus sécurisés, efficaces et faciles à maintenir.
Dans cet article, nous présenterons l'utilisation de PHP PDO, notamment comment se connecter à la base de données, exécuter des instructions SQL, traiter les transactions, etc.
1. Connectez-vous à la base de données
La connexion à la base de données est une étape clé dans l'utilisation de PDO pour les opérations de base de données. Avant de vous connecter à la base de données, vous devez préparer l'adresse de la base de données, le nom d'utilisateur, le mot de passe et la base de données correspondante. nom et autres informations.
Le code pour se connecter à la base de données est le suivant :
// 数据库连接信息,根据实际情况修改 $db_host = 'localhost'; // 数据库地址 $db_name = 'mydatabase'; // 数据库名称 $db_user = 'root'; // 数据库用户名 $db_password = 'password'; // 数据库密码 // 创建PDO对象 try { $pdo = new PDO("mysql:host={$db_host};dbname={$db_name}", $db_user, $db_password); } catch (PDOException $e) { echo '数据库连接失败:' . $e->getMessage(); exit; }
2. Exécuter les instructions SQL
Après la connexion à la base de données, nous devons faire fonctionner la base de données. Tout d'abord, nous devons apprendre à exécuter des instructions SQL. . PDO fournit plusieurs méthodes pour exécuter des instructions SQL. Les méthodes les plus couramment utilisées sont query()
et prepare()
. query()
和prepare()
方法。
1、使用query()方法执行SQL语句
query()
方法可以直接执行SQL语句,语句执行成功后,返回PDOStatement对象。
比如我们要查询一张用户表(user)中的数据,代码如下:
$sql = "SELECT * FROM user"; // SQL语句 $stmt = $pdo->query($sql); // 执行SQL语句,返回PDOStatement对象 // 获取查询结果 while ($row = $stmt->fetch()) { print_r($row); }
2、使用prepare()方法执行SQL语句
prepare()
1. Utilisez la méthode query() pour exécuter des instructions SQL
La méthode query()
peut exécuter directement des instructions SQL. Une fois l'instruction exécutée avec succès, l'objet PDOStatement est renvoyé. Par exemple, si nous voulons interroger les données d'une table utilisateur (user), le code est le suivant :
$sql = "SELECT * FROM user WHERE id = ?"; // SQL语句,使用?作为占位符 $stmt = $pdo->prepare($sql); // 准备SQL语句 $id = 1; // 赋值给变量$id $stmt->execute([$id]); // 执行SQL语句并传入变量值 // 获取查询结果 while ($row = $stmt->fetch()) { print_r($row); }
2 Utilisez la méthode prepare() pour exécuter l'instruction SQL
prepare. ()
peut préparer une instruction SQL et utiliser la liaison de variable pour exécuter l'instruction SQL. L'utilisation de la liaison de variable peut empêcher les attaques par injection SQL. Le code est le suivant : 🎜$pdo->beginTransaction(); // 开启事务 // 定义SQL语句 $sql1 = "DELETE FROM user WHERE id = ?"; $sql2 = "INSERT INTO user (uname, age) VALUES (?, ?)"; // 准备SQL语句 $stmt1 = $pdo->prepare($sql1); $stmt2 = $pdo->prepare($sql2); // 赋值给变量 $id = 1; // 要删除的数据ID $uname = 'test'; // 新增数据的用户名 $age = 18; // 新增数据的年龄 // 执行SQL语句 $stmt1->execute([$id]); $stmt2->execute([$uname, $age]); // 提交事务 $pdo->commit();
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!