Maison > base de données > tutoriel mysql > Comment PostgreSQL gère-t-il la sensibilité à la casse dans les noms de colonnes ?

Comment PostgreSQL gère-t-il la sensibilité à la casse dans les noms de colonnes ?

Susan Sarandon
Libérer: 2025-01-25 08:08:08
original
981 Les gens l'ont consulté

How Does PostgreSQL Handle Case Sensitivity in Column Names?

Sensibilité à la casse des noms de colonnes dans PostgreSQL

La façon dont la base de données PostgreSQL gère la sensibilité à la casse des noms de colonnes dépend du fait que le nom de la colonne est placé entre guillemets doubles. Les noms de colonnes entre guillemets doubles sont sensibles à la casse, tandis que les noms de colonnes entre guillemets doubles ne sont pas sensibles à la casse (seront convertis en minuscules). Cela signifie que "first_Name" et "FIRST_NAME" sont deux noms de colonnes différents, tandis que "FirstName" et "firstname" représentent la même colonne (tous deux convertis en minuscules).

Dans l'exemple de requête, comme "first_Name" n'est pas placé entre guillemets doubles, il sera converti en "firstname" minuscule, et ce nom de colonne n'existe pas dans la base de données, provoquant ainsi une erreur.

Solution :

  1. Utilisez des guillemets doubles : Utilisez des guillemets doubles autour des noms de colonnes dans les requêtes pour respecter la casse :
<code class="language-sql">SELECT * FROM persons WHERE "first_Name" = 'xyz';</code>
Copier après la connexion
  1. Utiliser le catalogue système : Utilisez le catalogue système pg_class pour interroger la casse réelle des noms de colonnes et l'utiliser dans la requête :
<code class="language-sql">SELECT * FROM persons WHERE column_name = 'first_Name';</code>
Copier après la connexion

column_name est une variable de nom de colonne obtenue à partir de pg_class qui contient des informations sur le cas.

Bonne pratique : Il est recommandé d'utiliser des noms de colonnes entièrement en minuscules sans guillemets doubles pour éviter les problèmes liés à la casse et garantir la cohérence des requêtes.

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