Le serveur MySQL prend en charge les instructions préparées, ce qui est très utile lorsque nous voulons exécuter de nombreuses requêtes qui ne diffèrent que par de petits détails. Nous pouvons préparer une instruction puis l'exécuter plusieurs fois, à chaque fois avec des valeurs de données différentes. Fondamentalement, les instructions préparées dans MySQL utilisent le protocole binaire client/serveur. Les instructions préparées offrent des performances améliorées car le serveur analyse uniquement une instruction complète.
Voici les étapes pour utiliser les instructions préparées dans MySQL -
Il s'agit de la première étape de notre instruction préparée utilisant l'instruction PREPARE. Par exemple, vous trouverez ci-dessous un rapport rédigé à partir des données de la table "Tender" -
PREPARE stmt FROM ‘Select tender_value from Tender Where Companyname = ?;’
C'est la deuxième étape que nous effectuerons en utilisant l'instruction préparée "PREPARE". Par exemple, nous exécuterons une instruction préparée en utilisant la syntaxe suivante stmt -
EXECUTE stmt USING @variable_name;
Ici, @variable_name aura la valeur que nous voulons transmettre à ? dans une instruction PREPARE. Avant d'exécuter l'instruction préparée, nous devons définir la valeur de @variable_name à l'aide de l'instruction SET.
C'est la dernière étape où nous publierons l'instruction préparée à l'aide de l'instruction DEALLOCATE. Par exemple, nous publierons l'instruction préparée stmt à l'aide de la syntaxe suivante -
DEALLOCATE PREPARE stmt;
Vous trouverez ci-dessous la requête dans laquelle nous exécuterons l'instruction préparée -
mysql> PREPARE stmt FROM 'SELECT tender_value from Tender WHERE Companyname = ?'; Query OK, 0 rows affected (0.09 sec) Statement prepared mysql> SET @A = 'Singla Group.'; Query OK, 0 rows affected (0.00 sec) mysql> EXECUTE stmt using @A; +--------------+ | tender_value | +--------------+ | 220.255997 | +--------------+ 1 row in set (0.07 sec) mysql> DEALLOCATE PREPARE stmt; Query OK, 0 rows affected (0.00 sec)
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!