Corsi on-line

Parole riservate e nomi di tabelle in MySQL

Il Database manager MySQL, così come altri DBMS, prevede alcune keywords, dette anche “parole riservate”, che non potrebbero essere utilizzate come nomi di database, tabelle, campi, stored procedures e molto altro; si pensi per esempio al termine SELECT, si tratta di un comando proprio del linguaggio SQL, quindi, per convenzione, un utilizzatore non dovrebbe creare una tabella chiamata SELECT.

MySQL non impedisce di denominare una tabella in questo modo, il problema sorge semmai quando si utilizza questo nome all’interno di istruzioni, ad esempio:

UPDATE SELECT SET c = 3 WHERE id_select = 14;

Eseguire un’istruzione del genere porta alla notifica di un errore, come evitarlo? Semplicemente “quotando” il nome della tabella:

UPDATE `SELECT` SET c = 3 WHERE id_select = 14;

In questo modo il DBMS saprà che “SELECT” è il nome della tabella e non lo interpreterà come una parola riservata.

Post correlati
  • ritengo comunque che sia una cosa da evitare, di solito prima o poi si crea un “pasticcio”. del resto i nomi possibili evitando le parole riservate sono una miniera inesauribile

  • Claudio Garau

    Perfettamente d’accordo, però se esiste un metodo per poterle utilizzare può essere utile conoscerlo.

I più letti del mese
Tematiche