Maison > base de données > tutoriel mysql > Comment puis-je échapper aux noms de colonnes de type mot-clé dans PostgreSQL ?

Comment puis-je échapper aux noms de colonnes de type mot-clé dans PostgreSQL ?

Linda Hamilton
Libérer: 2025-01-14 06:30:43
original
496 Les gens l'ont consulté

How Do I Escape Keyword-Like Column Names in PostgreSQL?

Lors du traitement des tables dans PostgreSQL, nous pouvons rencontrer des noms de colonnes similaires à des mots-clés dans le langage SQL. Cela peut provoquer des erreurs lors de l'écriture de requêtes car PostgreSQL peut essayer d'interpréter les noms de colonnes comme des mots-clés plutôt que comme des identifiants.

Pour résoudre ce problème, nous pouvons utiliser des guillemets doubles pour entourer le nom de la colonne, lui échappant ainsi et empêchant PostgreSQL de le prendre pour un mot-clé.

Par exemple, considérons le tableau suivant :

<code class="language-sql">CREATE TABLE my_table (id SERIAL PRIMARY KEY, name TEXT, year INTEGER);</code>
Copier après la connexion

Maintenant, disons que nous voulons insérer une nouvelle ligne dans ce tableau et définir la colonne « année » sur une valeur spécifique. Si on écrit la requête comme suit :

<code class="language-sql">INSERT INTO my_table (id, name, year) VALUES (1, 'John Doe', 1990);</code>
Copier après la connexion

Nous obtenons des erreurs à proximité du mot-clé "year" car PostgreSQL essaie de l'interpréter comme un mot réservé.

Pour résoudre ce problème, nous mettons simplement "année" entre guillemets :

<code class="language-sql">INSERT INTO my_table (id, name, "year") VALUES (1, 'John Doe', 1990);</code>
Copier après la connexion

En citant le nom de la colonne, nous demandons à PostgreSQL de le traiter comme un identifiant plutôt que comme un mot-clé, nous permettant ainsi de définir avec succès sa valeur.

Selon la documentation PostgreSQL, un « identifiant délimité » ou « identifiant cité » est un identifiant mis entre guillemets doubles. Ils sont toujours reconnus comme identifiants et ne peuvent être confondus avec des mots-clés. Cela nous permet d'utiliser des mots-clés comme noms de colonnes ou de tables sans rencontrer d'erreurs.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal