Position actuelle: Accueil> Derniers articles> Que dois-je faire si j'écris incorrectement la syntaxe SQL? Utilisez PDO :: ErrorCode pour localiser avec précision la cause des erreurs

Que dois-je faire si j'écris incorrectement la syntaxe SQL? Utilisez PDO :: ErrorCode pour localiser avec précision la cause des erreurs

gitbox 2025-09-08
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Le code ici n&#39;est qu&#39;un espace réservé,N&#39;a rien à voir avec le contenu du texte</span></span><span>
</span><span><span class="hljs-variable">$foo</span></span><span> = </span><span><span class="hljs-string">"bar"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Cette partie n&#39;a rien à voir avec l&#39;article,Pour la démonstration seulement。"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>

<hr>

<h1>SQL Que faire si la grammaire est écrite incorrectement?utiliser PDO::</span><span><span class="hljs-variable constant_">errorCode</span></span><span> Causes d&#39;erreur de positionnement précise</h1>

<p>
在使utiliser PHP Lorsque vous effectuez des opérations de base de données,SQL Les erreurs de syntaxe sont courantes pendant le développement“fosse”。Surtout quand SQL Plus compliqué,Si le message d&#39;erreur n&#39;est pas assez clair,Il est facile de passer beaucoup de temps sur l&#39;enquête。Heureusement,PDO Fourni <code>PDO::</span><span><span class="hljs-variable constant_">errorCode</span></span><span>

Dans cet exemple, nous avons délibérément écrit Select As SELEC . Lors de l'exécution, $ PDO-> ERRORCODE () renverra 42000 , tandis que $ pDo-> errorInfo () donnera une description d'erreur plus détaillée, telle que "vous avez une erreur dans votre syntaxe SQL ..." .

Combiné avec ErrorInfo pour plus de détails

Bien que ErrorCode peut aider à localiser rapidement les types d'erreurs, il a une granularité limitée. Une approche plus courante consiste à utiliser ErrorInfo en même temps, car elle renvoie un tableau:

  1. Code d'erreur SQLState
  2. Code d'erreur spécifique au pilote
  3. Messages d'erreur spécifiques au conducteur

Conseils de débogage

  • Dans l'environnement de développement, activez PDO :: errmode_exception pour permettre à une erreur de lancer directement une exception pour un débogage facile.
  • Dans un environnement de production, des exceptions peuvent être capturées et enregistrées pour éviter d'exposer directement la structure de la base de données aux utilisateurs.

Résumer

Lorsque la syntaxe SQL est mal écrite, il n'est pas nécessaire de rechercher aveuglément le code. Avec PDO :: ErrorCode et ErrorInfo , nous pouvons localiser rapidement et avec précision les types d'erreurs et les causes spécifiques, améliorant considérablement l'efficacité de débogage des erreurs. Il s'agit d'une compétence que chaque développeur utilisant PHP + PDO devrait maîtriser.