В крайна сметка всеки низ е валидно име на колона, след като е затворен в двойни кавички (MySQL може да не се подчинява на това правило в зависимост от конфигурацията. Той не използва двойни кавички като кавички на идентификатор в инсталацията по подразбиране).
Въпреки това, ако искате да бъдете междуплатформени (както предполагат различните тагове на СУБД), трябва да проверите за най-малкия общ знаменател.
Ръководството за PostgreSQL има хубава дефиниция от това:
Така че трябва да проверите следното с регулярен израз:
- започва с буква
- съдържа само знаци (букви) и цифри и долна черта
Така че регулярен израз като следния трябва да покрива това:
^[a-zA-Z_][a-zA-Z0-9_]*$
Тъй като SQL не е чувствителен към главни букви (освен ако не се използват двойни кавички), са разрешени главни и малки букви.