Heim > Datenbank > MySQL-Tutorial > Hauptteil

Tabellenspalten und NULL-Einschränkungen in SQL anzeigen

WBOY
Freigeben: 2024-07-25 15:43:00
Original
618 Leute haben es durchsucht

Displaying Table Columns and NULL Constraints in SQL

Bei der Arbeit mit Datenbanken ist es oft hilfreich zu wissen, welche Spalten in Ihren Tabellen NULL-Werte zulassen und welche nicht. Sie können diese Informationen einfach mithilfe von SQL-Abfragen im Informationsschema Ihrer Datenbank abrufen. Im Folgenden zeige ich Ihnen, wie Sie dies sowohl für MySQL als auch für PostgreSQL tun.

MySQL

Um eine Liste der Spalten und ihrer NULL-Einschränkungen für eine bestimmte Tabelle in MySQL zu erhalten, können Sie die Tabelle INFORMATION_SCHEMA.COLUMNS abfragen. Hier ist die Abfrage, die Sie verwenden können:

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;
Nach dem Login kopieren

Erklärung:

  • COLUMN_NAME: Der Name der Spalte.
  • IS_NULLABLE: Gibt an, ob die Spalte NULL-Werte zulässt (JA bedeutet, dass NULL zulässig ist, NEIN bedeutet, dass NULL nicht zulässig ist).
  • TABLE_SCHEMA: Der Name Ihrer Datenbank.
  • TABLE_NAME: Der Name Ihrer Tabelle.
  • ORDINAL_POSITION: Stellt sicher, dass die Spalten in der Reihenfolge aufgelistet werden, in der sie im Tabellenschema erscheinen.

PostgreSQL

Ähnlich können Sie in PostgreSQL die Tabelle information_schema.columns abfragen, um diese Informationen abzurufen. Hier ist die entsprechende Abfrage:

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;
Nach dem Login kopieren

Erklärung:

  • Spaltenname: Der Name der Spalte.
  • is_nullable: Gibt an, ob die Spalte NULL-Werte zulässt (JA bedeutet, dass NULL zulässig ist, NEIN bedeutet, dass NULL nicht zulässig ist).
  • table_schema: Normalerweise „öffentlich“ für die meisten benutzerdefinierten Tabellen, es sei denn, Sie verwenden ein anderes Schema.
  • Tabellenname: Der Name Ihrer Tabelle.
  • ordinal_position: Stellt sicher, dass die Spalten in der Reihenfolge aufgelistet werden, in der sie im Tabellenschema erscheinen.

Beispiel

Angenommen, Sie haben eine Tabelle mit dem Namen „users“ in einer Datenbank mit dem Namen „my_database“. So würden Sie die Einschränkungen abfragen:

MySQL-Beispiel:
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;
Nach dem Login kopieren
PostgreSQL-Beispiel:
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;
Nach dem Login kopieren
Beispielausgabe:
Column Name Is Nullable
id NO
name NO
email YES
created_at NO
updated_at YES

Mit diesen Abfragen können Sie ganz einfach die NULL-Einschränkungen Ihrer Tabellenspalten überprüfen und so das Schema und die Datenanforderungen besser verstehen.

Das obige ist der detaillierte Inhalt vonTabellenspalten und NULL-Einschränkungen in SQL anzeigen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!