Exécution de plusieurs requêtes séparées par un point-virgule avec MySQL Connector/J
Exécution de requêtes
Dans SQL, plusieurs requêtes peuvent souvent être séparées par des points-virgules pour les exécuter consécutivement. Cependant, lors de l'utilisation de MySQL Connector/J, l'exécution de plusieurs requêtes de cette manière n'est pas prise en charge.
Raison de l'exception
Lors de la tentative d'exécution de plusieurs requêtes séparées par des points-virgules, une exception se produit car MySQL Connector/J adhère à la spécification JDBC, qui stipule qu'une seule instruction de préparation ou d'exécution ne doit contenir qu'une seule instruction réelle.
Solution alternative
Pour exécuter plusieurs requêtes en séquence, il est nécessaire d'utiliser des exécutions JDBC distinctes. Par exemple :
statement.execute("select fullName from user where user_id=1"); statement.execute("select fullName from user where user_id=2");
Approche non standard
Bien que l'exécution de plusieurs requêtes séparées par des points-virgules ne soit généralement pas prise en charge dans MySQL Connector/J, il existe une exception. La propriété de connexion AllowMultiQueries peut être définie sur true pour activer ce comportement. Cependant, cette approche n'est pas conforme à l'API JDBC et peut affecter la portabilité.
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!