Megosztás a következőn keresztül:


sys.types (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példányAzure Synapse AnalyticsElemzési platformrendszer (PDW)SQL Analytics-végpont a Microsoft FabricbenRaktár a Microsoft FabricbenSQL-adatbázis a Microsoft Fabricben

Minden rendszerhez és felhasználó által definiált típushoz tartozik egy sor.

Oszlop név Adattípus Description
name sysname A típus neve. Egyedi a sémán belül.
system_type_id tinyint A belső rendszer típusának azonosítója.
user_type_id int A típus igazolván. Egyedi az adatbázisban.

A CLR összeállítási típusok, mint például a hierarchyid, a geometria és a földrajz, eltérő system_type_id, és azonosíthatók .is_assembly_type A sysname adattípus egy belső adattípus, amely nvarcharon alapul.
schema_id int Az a séma azonosítója, amelyhez a típus tartozik.
principal_id int Az egyéni tulajdonos azonosítója, ha eltér a séma tulajdonostól. Alapértelmezés szerint a sémában lévő objektumok a séma tulajdonosa maradnak. Azonban alternatív tulajdonos is megnevezhető az ALTER AUTHORIZATION utasítás használatával a tulajdonos megváltoztatásához.

NULL ha nincs alternatív egyéni tulajdonos.
max_length smallint A típus maximális hossza (bájtokban).

- 1 = Az oszlop adattípusa: varchar(max),nvarchar(max), varbinary(max) vagy xml.
Szövegoszlopok esetén az max_length érték 16 lesz.
precision tinyint A típus maximális pontossága, ha numerikusan alapul; egyébként 0.
scale tinyint A típus maximális skálája, ha számozási alapú; egyébként 0.
collation_name sysname A típus összeállításának neve, ha karakteralapú az illetőző; másrészt . NULL
is_nullable bit A típus nullálható.
is_user_defined bit 1 = Felhasználó által definiált típus.

0 = SQL Server rendszer adattípusa.
is_assembly_type bit 1 = A típus megvalósítása egy CLR assembly alatt van definiálva.

0 = A típus egy SQL Server rendszer adattípusán alapul.
default_object_id int Az önálló alapértelmezett azonosító, amely a típushoz kötött sp_bindefault használatával.

0 = Nincs alapértelmezett alapértelmezett.
rule_object_id int Az önálló szabály azonosítója, amely a típushoz van kötve sp_bindrule használatával.

0 = Nincs szabály.
is_table_type bit Jelzi, hogy a típus egy táblázat.

Permissions

A katalógusnézetekben a metaadatok láthatósága olyan biztonságos adatokra korlátozódik, amelyek egy felhasználó tulajdonában vannak, vagy amelyeken a felhasználó engedélyt kapott. További információ: Metaadatok láthatóságának konfigurációja.

Felhasználási példák

Táblázat oszlopadatainak lekérése

Ha egy tábla oszlopainak metaadatait szeretné lekérni, használja az alábbi kódot:

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');