Comme nous le savons tous, les variables utilisateur MySQL sont spécifiques à la connexion client qui les utilise et n'existent que pour la durée de cette connexion. Lorsqu'une connexion se termine, toutes ses variables utilisateur sont perdues. De même, une instruction préparée n'existe que pendant et est visible par la session qui l'a créée. Lorsqu'une session se termine, toutes les instructions préparées pour cette session sont supprimées.
Une autre similitude est que les instructions préparées ne sont pas non plus sensibles à la casse comme les variables utilisateur MySQL. Par exemple, stmt11 et STMT11 sont identiques, comme indiqué dans l'exemple suivant -
mysql> Select * from student; +------+-------+ | Id | Name | +------+-------+ | 1 | Ram | | 2 | Shyam | | 3 | Rohan | +------+-------+ 3 rows in set (0.00 sec) mysql> SET @A = 'Sohan', @B = 3; Query OK, 0 rows affected (0.00 sec) mysql> EXECUTE Stmt11 USING @A, @B; Query OK, 1 row affected (0.12 sec) mysql> Select * from Student; +------+-------+ | Id | Name | +------+-------+ | 1 | Ram | | 2 | Shyam | | 3 | Sohan | +------+-------+ 3 rows in set (0.00 sec) mysql> SET @A = 'Gaurav', @B = 3; Query OK, 0 rows affected (0.00 sec) mysql> EXECUTE STMT11 USING @A, @B; Query OK, 1 row affected (0.04 sec) mysql> Select * from Student; +------+--------+ | Id | Name | +------+--------+ | 1 | Ram | | 2 | Shyam | | 3 | Gaurav | +------+--------+ 3 rows in set (0.00 sec)
Dans l'exemple ci-dessus, une fois que nous exécutons stmt11, ils fonctionnent tous les deux de la même manière la prochaine fois que nous exécutons STMT11 car les instructions préparées ne différencient pas Upper et Lower cas.
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!