Share via


Informationsschema

Gäller endast för:markerad ja Databricks SQL markerad ja Databricks Runtime 10.4 LTS och senare markerad ja i Unity Catalog

INFORMATION_SCHEMA är ett SQL-standardbaserat schema som tillhandahålls i varje katalog som skapats i Unity Catalog.

I informationsschemat hittar du en uppsättning vyer som beskriver de objekt som är kända för schemats katalog som du har behörighet att se. Informationsschemat för SYSTEM katalogen returnerar information om objekt i alla kataloger i metaarkivet. Systemtabeller för informationsschema innehåller inte metadata om hive_metastore objekt.

Syftet med informationsschemat är att tillhandahålla ett SQL-baserat, självbeskrivande API för metadata.

Entitetsrelationsdiagram över informationsschemat

Följande entitetsrelationsdiagram (ER) innehåller en översikt över en delmängd av informationsschemavyer och hur de relaterar till varandra.

ER-diagram över informationsschema

Informationsschemavyer

Name beskrivning
CATALOG_PRIVILEGES Listar huvudnamn som har behörighet i katalogerna.
CATALOG_PROVIDER_SHARE_USAGE Beskriver providerresursen monterad på kataloger.
CATALOG_TAGS Innehåller taggar som har tillämpats på katalogerna.
KATALOGER Beskriver kataloger.
CHECK_CONSTRAINTS Reserverad för framtida användning.
COLUMN_MASKS Beskriver kolumnmasker på tabellkolumner i katalogen.
COLUMN_TAGS Innehåller kolumntaggningsmetadata i en tabell.
KOLUMNER Beskriver kolumner med tabeller och vyer i katalogen.
CONNECTION_PRIVILEGES Visar en lista över huvudnamn som har behörighet för de externa anslutningarna.
ANSLUTNINGAR Beskriver externa anslutningar.
CONSTRAINT_COLUMN_USAGE Beskriver begränsningarna som refererar till kolumner i katalogen.
CONSTRAINT_TABLE_USAGE Beskriver begränsningarna som refererar till tabeller i katalogen.
EXTERNAL_LOCATION_PRIVILEGES Visar en lista över huvudnamn som har behörighet på de externa platserna.
EXTERNAL_LOCATIONS Beskriver externa platser.
INFORMATION_SCHEMA_CATALOG_NAME Returnerar namnet på det här informationsschemats katalog.
KEY_COLUMN_USAGE Visar kolumnerna för begränsningarna för primär- eller sekundärnyckeln i katalogen.
METASTORE_PRIVILEGES Visar en lista över huvudnamn som har behörighet för det aktuella metaarkivet.
METAARKIV Beskriver det aktuella metaarkivet.
PARAMETRAR Beskriver parametrar för rutiner (funktioner) i katalogen.
LEVERANTÖRER Beskriver providrar.
RECIPIENT_ALLOWED_IP_RANGES Visar tillåtna IP-intervall för mottagare.
RECIPIENT_TOKENS Visar en lista över token för mottagare.
MOTTAGARE Beskriver mottagare.
REFERENTIAL_CONSTRAINTS Beskriver referensbegränsningar (sekundärnyckel) som definierats i katalogen.
ROUTINE_COLUMNS Beskriver resultatkolumner för tabellvärdesfunktioner.
ROUTINE_PRIVILEGES Visar en lista över huvudnamn som har behörighet till rutinerna i katalogen.
RUTINER Beskriver rutiner (funktioner) i katalogen.
ROW_FILTERS Beskriver radfilter på tabeller i katalogen.
SCHEMA_PRIVILEGES Visar en lista över huvudnamn som har behörighet för schemana i katalogen.
SCHEMA_TAGS Innehåller schemataggningsmetadata i schemat.
SCHEMA_SHARE_USAGE Beskriver de scheman som refereras till i resurser.
SCHEMATA Beskriver scheman i katalogen.
SHARE_RECIPIENT_PRIVILEGES Beskriver mottagarna som beviljats åtkomst till resurser.
AKTIER Beskriver resurser.
STORAGE_CREDENTIAL_PRIVILEGES Visar en lista över huvudnamn som har behörighet för lagringsautentiseringsuppgifterna.
STORAGE_CREDENTIALS Beskriver autentiseringsuppgifter för lagring.
TABLE_CONSTRAINTS Beskriver metadata för alla primära och sekundärnyckelbegränsningar i katalogen.
TABLE_PRIVILEGES Listar huvudnamn som har behörighet för tabellerna och vyerna i katalogen.
TABLE_SHARE_USAGE Beskriver tabellerna som refereras i resurser.
TABLE_TAGS Innehåller tabelltaggningsmetadata i en tabell.
TABELLER Beskriver tabeller och vyer som definierats i katalogen.
VISNINGAR Beskriver visa specifik information om vyerna i katalogen.
VOLYMER Beskriver volymer som definierats i katalogen.
VOLUME_PRIVILEGES Listar huvudnamn som har behörighet på volymerna i katalogen.
VOLUME_TAGS Innehåller metadata för volymtaggning som tillämpas på en volym.

Kommentar

Identifierare är skiftlägesokänsliga när de refereras i SQL-uttryck, men de lagras i informationsschemat som STRING. Detta innebär att du antingen måste söka efter dem med hjälp av det fall där identifieraren lagras eller använda funktioner som ilike.

Exempel

> SELECT table_name, column_name
    FROM information_schema.columns
    WHERE data_type = 'DOUBLE'
      AND table_schema = 'information_schema';

Följande är exempel på arbetsflöden som använder schematabellerna för information på systemnivå.

Om du vill visa alla tabeller som har skapats under de senaste 24 timmarna kan frågan se ut så här.

> SELECT table_name, table_owner, created_by, last_altered, last_altered_by, table_catalog
    FROM system.information_schema.tables
    WHERE  datediff(now(), last_altered) < 1;

Om du vill visa hur många tabeller du har i varje schema bör du överväga följande exempel.

> SELECT table_schema, count(table_name)
    FROM system.information_schema.tables
    WHERE table_schema = 'tpch'
    GROUP BY table_schema
    ORDER BY 2 DESC