Maison  >  Article  >  développement back-end  >  Comment utiliser l'extension PHP PDO pour se connecter à la base de données MySQL

Comment utiliser l'extension PHP PDO pour se connecter à la base de données MySQL

PHPz
PHPzoriginal
2023-04-04 09:12:38860parcourir

Dans les applications PHP, les opérations qui nécessitent une modification de la base de données sont l'une des exigences courantes. PHP Data Object (PDO) fournit un moyen sûr et efficace de fonctionner sur des bases de données relationnelles.

Cet article expliquera comment utiliser l'extension PDO pour se connecter à la base de données MySQL et démontrera à travers des exemples comment utiliser PDO pour modifier les données de la base de données.

Connectez-vous à la base de données MySQL

Avant d'utiliser PDO, vous devez d'abord vous connecter à la base de données. Voici un exemple de code pour se connecter à une base de données MySQL :

//数据库连接参数
$host = 'localhost';
$dbname = 'test';
$username = 'root';
$password = '';

//连接数据库
try {
    $db = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
} catch(PDOException $e) {
    echo $e->getMessage();
}

Dans le code ci-dessus, nous nous connectons à la base de données via le constructeur de la classe PDO. Tout d'abord, spécifiez le nom d'hôte et le nom de la base de données MySQL, puis transmettez le nom d'utilisateur et le mot de passe pour vous connecter.

Modifier les données de la base de données

Une fois la connexion réussie, voyons comment utiliser PDO pour modifier les données de la base de données. Nous supposons qu'il existe une table étudiant contenant les champs identifiant, nom et âge. Ensuite, nous montrerons comment utiliser PDO pour modifier les données de cette table.

  1. Mettre à jour un seul champ

Nous pouvons utiliser la fonction prepare() de PDO pour effectuer des opérations de modification. Voici un exemple de code qui met à jour l'enregistrement avec l'identifiant 1 dans la table étudiant :

//更新数据
$id = 1;
$newName = 'Tom';
$sql = "UPDATE student SET name=:name WHERE id=:id";
$stmt = $db->prepare($sql);
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->bindParam(':name', $newName, PDO::PARAM_STR);
$stmt->execute();

Dans le code ci-dessus, nous définissons d'abord l'identifiant et la nouvelle valeur du nom de l'enregistrement à mettre à jour. Nous mettons ensuite à jour le nom en $newName via l'instruction UPDATE, où :id et :name sont des espaces réservés. Ensuite, nous utilisons la fonction prepare() de PDO pour préparer l'instruction SQL et lier les valeurs de $id et $newName via la fonction bindParam(). Enfin, nous appelons la fonctionexecute() pour effectuer l’opération de mise à jour.

  1. Mettre à jour plusieurs champs

Si vous souhaitez mettre à jour plusieurs champs, nous pouvons utiliser une méthode similaire à celle ci-dessus. Voici un exemple de code qui met à jour les champs nom et âge de l'enregistrement avec l'identifiant 1 dans la table étudiant :

//更新数据
$id = 1;
$newName = 'Tom';
$newAge = 20;
$sql = "UPDATE student SET name=:name, age=:age WHERE id=:id";
$stmt = $db->prepare($sql);
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->bindParam(':name', $newName, PDO::PARAM_STR);
$stmt->bindParam(':age', $newAge, PDO::PARAM_INT);
$stmt->execute();

Dans le code ci-dessus, nous mettons à jour le nom et l'âge avec de nouvelles valeurs via l'instruction UPDATE. Notez que nous devons lier les paramètres correspondants pour chaque champ à mettre à jour.

  1. Mettre à jour les enregistrements par lots

Si vous souhaitez mettre à jour les données par lots, nous pouvons utiliser la fonction de transaction de PDO. Voici un exemple de code pour mettre à jour plusieurs enregistrements d'étudiants :

//更新多条数据
$students = array(
    array('id'=>1, 'name'=>'Tom', 'age'=>20),
    array('id'=>2, 'name'=>'Jack', 'age'=>22),
    array('id'=>3, 'name'=>'Lily', 'age'=>21)
);

try {
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $db->beginTransaction();
    $sql = "UPDATE student SET name=:name, age=:age WHERE id=:id";
    $stmt = $db->prepare($sql);
    foreach ($students as $student) {
        $stmt->bindParam(':id', $student['id'], PDO::PARAM_INT);
        $stmt->bindParam(':name', $student['name'], PDO::PARAM_STR);
        $stmt->bindParam(':age', $student['age'], PDO::PARAM_INT);
        $stmt->execute();
    }
    $db->commit();
} catch (PDOException $e) {
    $db->rollback();
    echo $e->getMessage();
}

Dans le code ci-dessus, nous définissons un tableau $students qui contient les enregistrements à mettre à jour. Ensuite, nous avons implémenté l’opération de transaction en utilisant la fonction startTransaction() et la fonction commit(). Dans la boucle, nous lions les paramètres id, name et age de chaque enregistrement et exécutons respectivement les instructions SQL.

Résumé

L'utilisation de PDO pour modifier les données d'une base de données est une méthode sûre et fiable. Dans cet article, nous expliquons comment utiliser PDO pour se connecter à la base de données MySQL et montrons à travers des exemples comment utiliser PDO pour modifier les données de la base de données. Il convient de mentionner que nous avons également présenté comment utiliser la fonction de transaction de PDO pour mettre à jour les enregistrements par lots, ce qui est une compétence très pratique.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn