Maison > base de données > tutoriel mysql > le corps du texte

Affichage des colonnes de table et des contraintes NULL dans SQL

WBOY
Libérer: 2024-07-25 15:43:00
original
618 Les gens l'ont consulté

Displaying Table Columns and NULL Constraints in SQL

Lorsque vous travaillez avec des bases de données, il est souvent utile de savoir quelles colonnes de vos tables autorisent les valeurs NULL et lesquelles ne le permettent pas. Vous pouvez facilement récupérer ces informations à l'aide de requêtes SQL sur le schéma d'information de votre base de données. Ci-dessous, je vais vous montrer comment procéder pour MySQL et PostgreSQL.

MySQL

Pour obtenir une liste de colonnes et leurs contraintes NULL pour une table spécifique dans MySQL, vous pouvez interroger la table INFORMATION_SCHEMA.COLUMNS. Voici la requête que vous pouvez utiliser :

SELECT 
    COLUMN_NAME AS 'Column Name', 
    IS_NULLABLE AS 'Is Nullable'
FROM 
    INFORMATION_SCHEMA.COLUMNS
WHERE 
    TABLE_SCHEMA = 'your_database_name' 
    AND TABLE_NAME = 'your_table_name'
ORDER BY 
    ORDINAL_POSITION;
Copier après la connexion

Explication :

  • COLUMN_NAME : Le nom de la colonne.
  • IS_NULLABLE : indique si la colonne autorise les valeurs NULL (OUI signifie qu'elle autorise NULL, NON signifie qu'elle n'autorise pas NULL).
  • TABLE_SCHEMA : Le nom de votre base de données.
  • TABLE_NAME : Le nom de votre table.
  • ORDINAL_POSITION : garantit que les colonnes sont répertoriées dans l'ordre dans lequel elles apparaissent dans le schéma du tableau.

PostgreSQL

De même, dans PostgreSQL, vous pouvez interroger la table information_schema.columns pour récupérer ces informations. Voici la requête équivalente :

SELECT 
    column_name AS "Column Name", 
    is_nullable AS "Is Nullable"
FROM 
    information_schema.columns
WHERE 
    table_schema = 'public' 
    AND table_name = 'your_table_name'
ORDER BY 
    ordinal_position;
Copier après la connexion

Explication :

  • column_name : Le nom de la colonne.
  • is_nullable : indique si la colonne autorise les valeurs NULL (OUI signifie qu'elle autorise NULL, NON signifie qu'elle n'autorise pas NULL).
  • table_schema : généralement « public » pour la plupart des tables définies par l'utilisateur, sauf si vous utilisez un schéma différent.
  • table_name : Le nom de votre table.
  • ordinal_position : garantit que les colonnes sont répertoriées dans l'ordre dans lequel elles apparaissent dans le schéma du tableau.

Exemple

Supposons que vous ayez une table nommée users dans une base de données nommée my_database. Voici comment interroger les contraintes :

Exemple MySQL :
SELECT 
    COLUMN_NAME AS 'Column Name', 
    IS_NULLABLE AS 'Is Nullable'
FROM 
    INFORMATION_SCHEMA.COLUMNS
WHERE 
    TABLE_SCHEMA = 'my_database' 
    AND TABLE_NAME = 'users'
ORDER BY 
    ORDINAL_POSITION;
Copier après la connexion
Exemple PostgreSQL :
SELECT 
    column_name AS "Column Name", 
    is_nullable AS "Is Nullable"
FROM 
    information_schema.columns
WHERE 
    table_schema = 'public' 
    AND table_name = 'users'
ORDER BY 
    ordinal_position;
Copier après la connexion
Exemple de sortie :
Column Name Is Nullable
id NO
name NO
email YES
created_at NO
updated_at YES

À l'aide de ces requêtes, vous pouvez facilement vérifier les contraintes NULL de vos colonnes de table, vous aidant ainsi à mieux comprendre le schéma et les exigences en matière de données.

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:dev.to
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!