Conventions de dénomination des tables et des colonnes dans PostgreSQL : justification
Lors de la tentative de création d'une table nommée "15909434_user", vous avez rencontré une erreur. La recherche a révélé la convention de dénomination de PostgreSQL, qui interdit les objets dont le nom commence par des chiffres. Cela vous a amené à explorer les raisons de cette restriction.
Selon la norme SQL-92, les caractères de début d'identifiant doivent être de simples lettres latines. Cette convention simplifie l'analyse des requêtes SQL, en particulier lors de la distinction entre les noms de colonnes et les expressions numériques dans la clause SELECT-list.
Considérez la requête suivante :
SELECT 2e2 + 3.4 FROM ...
Si les caractères numériques étaient autorisés en tant que démarreur d'identifiant, l'analyseur aurait du mal à déterminer si « 2e2 » est un nom de colonne ou un nombre, et si « 3.4 » représente la table « 3 » et la colonne « 4 » ou la valeur numérique 3.4.
En adhérant à la règle selon laquelle les identifiants doivent commencer par des caractères non numériques, l'analyseur peut rapidement distinguer les identifiants (noms de colonnes) et les expressions numériques.
Bien que l'élaboration d'un Un schéma autorisant les caractères numériques principaux est théoriquement possible, cela entraînerait probablement des règles d'analyse plus complexes et plus obscures.
En tant que Résultat, PostgreSQL adopte la convention SQL interdisant aux noms de tables et de colonnes de commencer par des caractères numériques, garantissant ainsi une analyse efficace des requêtes et la clarté du code SQL.
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!