Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
              gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL-analysslutpunkt i Microsoft Fabric
Warehouse i Microsoft Fabric
Returnerar en rad för varje kolumn i ett objekt som har kolumner, till exempel vyer eller tabeller. Följande lista innehåller de objekttyper som har kolumner:
- Tabellvärdessammansättningsfunktioner (FT)
- Infogade tabellvärdesbaserade SQL-funktioner (IF)
- Interna tabeller (IT)
- Systemtabeller (S)
- Tabellvärdesbaserade SQL-funktioner (TF)
- Användartabeller (U)
- Vyer (V)
| Kolumnnamn | Datatyp | Beskrivning | 
|---|---|---|
| object_id | Int | ID för det objekt som den här kolumnen tillhör. | 
| name | sysname | Namnet på kolumnen. Är unikt i objektet. | 
| column_id | Int | ID för kolumnen. Är unikt i objektet. Kolumn-ID:t kanske inte är sekventiella. | 
| system_type_id | tinyint | ID för kolumnens systemtyp. | 
| user_type_id | Int | ID för den typ av kolumn som definieras av användaren. Om du vill returnera namnet på typen ansluter du till katalogvyn sys.types i den här kolumnen. | 
| max_length | smallint | Maximal längd (i byte) för kolumnen. -1= Kolumndatatypen är varchar(max), nvarchar(max), varbinary(max)eller xml-.För text-, ntext- och bildkolumner max_lengthär16värdet (representerar endast pekaren på 16 byte) eller värdet som anges avsp_tableoption 'text in row'. | 
| precision | tinyint | Precision för kolumnen om den är numerisk. annars . 0 | 
| scale | tinyint | Skala av kolumn om den är numeriskt baserad. annars . 0 | 
| collation_name | sysname | Namn på sortering av kolumnen om den är teckenbaserad. annars NULL. | 
| is_nullable | bit | 1= Kolumnen är null0= Kolumnen kan inte ogiltigförklaras | 
| is_ansi_padded | bit | 1= Kolumnen använderANSI_PADDING ONbeteende om tecken, binär eller variant0= Kolumnen är inte tecken, binär eller variant | 
| is_rowguidcol | bit | 1= Kolumnen är en deklareradROWGUIDCOL | 
| is_identity | bit | 1= Kolumnen har identitetsvärden | 
| is_computed | bit | 1= Kolumn är en beräknad kolumn | 
| is_filestream | bit | 1= Kolumnen är en FILESTREAM-kolumn | 
| is_replicated | bit | 1= Kolumnen replikeras | 
| is_non_sql_subscribed | bit | 1= Kolumnen har en icke-SQL Server-prenumerant | 
| is_merge_published | bit | 1= Kolumnen är sammanslagningspublicerad | 
| is_dts_replicated | bit | 1= Kolumnen replikeras med hjälp av SSIS | 
| is_xml_document | bit | 1= Innehållet är ett fullständigt XML-dokument0= Innehållet är ett dokumentfragment, eller så är kolumndatatypen inte xml | 
| xml_collection_id | Int | Nonzero om datatypen för kolumnen är xml och XML skrivs. Värdet är ID:t för samlingen som innehåller det verifierande XML-schemanamnområdet för kolumnen 0= Ingen XML-schemasamling | 
| default_object_id | Int | ID för standardobjektet, oavsett om det är ett fristående objekt sp_bindefault eller en infogad begränsning på kolumnnivå DEFAULT. Den parent_object_id kolumnen i ett standardobjekt på infogad kolumnnivå är en referens tillbaka till själva tabellen.0= Inget standardvärde | 
| rule_object_id | Int | ID för den fristående regeln som är bunden till kolumnen med hjälp av sys.sp_bindrule.0= Ingen fristående regel. För begränsningar på kolumnnivåCHECK, se sys.check_constraints. | 
| is_sparse | bit | 1= Kolumnen är en gles kolumn. Mer information finns i Använda glesa kolumner. | 
| is_column_set | bit | 1= Kolumn är en kolumnuppsättning. Mer information finns i Använda glesa kolumner. | 
| generated_always_type | tinyint | Identifierar när kolumnvärdet genereras (är alltid 0för kolumner i systemtabeller).gäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database. 0=NOT_APPLICABLE1=AS_ROW_START2=AS_ROW_ENDGäller för: SQL Server 2022 (16.x) och senare versioner och SQL Database. 5=AS_TRANSACTION_ID_START6=AS_TRANSACTION_ID_END7=AS_SEQUENCE_NUMBER_START8=AS_SEQUENCE_NUMBER_ENDMer information finns i temporala tabeller. | 
| generated_always_type_desc | nvarchar(60) | Textbeskrivning av generated_always_typevärdet (alltidNOT_APPLICABLEför kolumner i systemtabeller)gäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database. NOT_APPLICABLEAS_ROW_STARTAS_ROW_ENDGäller för: SQL Server 2022 (16.x) och senare versioner och SQL Database. AS_TRANSACTION_ID_STARTAS_TRANSACTION_ID_ENDAS_SEQUENCE_NUMBER_STARTAS_SEQUENCE_NUMBER_END | 
| encryption_type | Int | Krypteringstyp: 1= Deterministisk kryptering2= Randomiserad krypteringGäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database | 
| encryption_type_desc | nvarchar(64) | Beskrivning av krypteringstyp: RANDOMIZEDDETERMINISTICGäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database | 
| encryption_algorithm_name | sysname | Namnet på krypteringsalgoritmen. Endast AEAD_AES_256_CBC_HMAC_SHA_512stöds.Gäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database | 
| column_encryption_key_id | Int | ID för kolumnkrypteringsnyckeln (CEK). Gäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database | 
| column_encryption_key_database_name | sysname | Namnet på databasen där kolumnkrypteringsnyckeln finns om den skiljer sig från kolumnens databas. NULLom nyckeln finns i samma databas som kolumnen.Gäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database | 
| is_hidden | bit | Anger om kolumnen är dold: 0= vanlig, inte dold, synlig kolumn1= dold kolumnGäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database | 
| is_masked | bit | Anger om kolumnen maskeras av dynamisk datamaskering: 0= vanlig, inte maskerad kolumn1= kolumnen är maskeradGäller för: SQL Server 2016 (13.x) och senare versioner och SQL Database | 
| graph_type | Int | Intern kolumn med en uppsättning värden. Värdena är mellan 1och8för grafkolumner ochNULLför andra. | 
| graph_type_desc | nvarchar(60) | Identifieras endast i informationssyfte. Stöds inte. Framtida kompatibilitet garanteras inte. | 
| is_data_deletion_filter_column | bit | Anger om kolumnen är kolumnen för datakvarhållningsfilter för tabellen. gäller för: Azure SQL Edge | 
| ledger_view_column_type | Int | Om inte NULLanger anger typen av en kolumn i en transaktionsregistervy:1=TRANSACTION_ID2=SEQUENCE_NUMBER3=OPERATION_TYPE4=OPERATION_TYPE_DESCMer information finns i Översikt över transaktionsregister. Gäller för: SQL Server 2022 (16.x) och senare versioner och SQL Database | 
| ledger_view_column_type_desc | nvarchar(60) | Om inte NULL, innehåller en textbeskrivning av typen av en kolumn i en transaktionsregistervy:TRANSACTION_IDSEQUENCE_NUMBEROPERATION_TYPEOPERATION_TYPE_DESCGäller för: SQL Server 2022 (16.x) och senare versioner och SQL Database | 
| is_dropped_ledger_column | bit | Anger en tabellkolumn i transaktionsregistret som har tagits bort. Gäller för: SQL Server 2022 (16.x) och senare versioner och SQL Database | 
| vector_dimensions | Int | Anger hur många dimensioner vektorn har Gäller för: SQL Server 2025 (17.x) förhandsversioner och senare versioner samt SQL Database | 
| vector_base_type | Int | Anger den datatyp som används för att lagra värden för vektordimensioner. 0= 32-bitars flyttal (enkel precision)1= 16-bitars (halvprecision) flyttalGäller för: SQL Server 2025 (17.x) förhandsversioner och senare versioner samt SQL Database | 
| vector_base_type_desc | Int | Innehåller textbeskrivningen för den datatyp som används för att lagra vektordimensionsvärden. Gäller för: SQL Server 2025 (17.x) förhandsversioner och senare versioner samt SQL Database | 
Behörigheter
Synligheten för metadata i katalogvyer är begränsad till skyddsbara objekt som en användare antingen äger eller som användaren har beviljats viss behörighet för. För mer information, se inställningar för metadatasynlighet.
Användningsexempel
Hämta kolumninformation för en tabell
Om du vill hämta metadata för kolumner i en tabell kan du använda följande kod:
CREATE TABLE dbo.[sample] (
    id INT NOT NULL
    ,col1 VARBINARY(10) NULL
    )
GO
SELECT c.[name] AS column_name
    ,t.[name] AS [type_name]
    ,c.[max_length]
    ,c.[precision]
    ,c.[scale]
FROM sys.columns c
INNER JOIN sys.types t ON c.user_type_id = t.user_type_id
WHERE object_id = object_id('dbo.sample');