Maison >base de données >tutoriel mysql >Comment puis-je incrémenter efficacement les valeurs dans les requêtes MySQL UPDATE ?

Comment puis-je incrémenter efficacement les valeurs dans les requêtes MySQL UPDATE ?

DDD
DDDoriginal
2024-12-26 12:57:10400parcourir

How Can I Efficiently Increment Values in MySQL UPDATE Queries?

Incrémentation des valeurs dans les requêtes MySQL UPDATE

Dans la requête MySQL UPDATE, plutôt que de concaténer manuellement la valeur d'incrémentation, il est plus efficace d'incrémenter directement la valeur existante dans la base de données. Cela garantit une incrémentation correcte des points.

Exemple incorrect :

Le code ci-dessous tente d'incrémenter les points d'un utilisateur mais échoue car il concatène les points existants avec la valeur d'incrémentation, ce qui entraîne en remplacement de la valeur d'origine :

mysql_query("
    UPDATE member_profile 
    SET points= ' ".$points." ' + 1 
    WHERE user_id = '".$userid."'
");

Correct Méthode :

Pour incrémenter correctement la valeur, utilisez le code suivant :

$sql = "UPDATE member_profile SET points = points + 1 WHERE user_id = ? ;";
$db->prepare($sql)->execute([$userid]);

Ce code utilise des instructions préparées et des espaces réservés pour gérer en toute sécurité l'opération d'incrémentation. Cela fonctionne à la fois pour PDO et mysqli dans les versions PHP modernes. En utilisant cette méthode, la base de données incrémentera automatiquement la valeur des points existants, garantissant ainsi des mises à jour précises des points.

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