Mysql
 sql >> Database >  >> RDS >> Mysql

Verificare la presenza di un nome di colonna SQL valido

In definitiva, ogni stringa è un nome di colonna valido una volta racchiusa tra virgolette doppie (MySQL potrebbe non obbedire a tale regola a seconda della configurazione. Non utilizza le virgolette doppie come virgolette identificative nell'installazione predefinita).

Tuttavia, se vuoi essere multipiattaforma (come suggeriscono i diversi tag DBMS), dovresti controllare il minimo comune denominatore.

Il manuale di PostgreSQL ha una bella definizione di questo:

Quindi dovresti controllare quanto segue con un'espressione regolare:

  • inizia con una lettera
  • contiene solo caratteri (lettere) e cifre e un trattino basso

Quindi un'espressione regolare come la seguente dovrebbe coprire questo:

^[a-zA-Z_][a-zA-Z0-9_]*$

Poiché SQL non fa distinzione tra maiuscole e minuscole (a meno che non vengano utilizzate virgolette doppie), sono consentite lettere maiuscole e minuscole.