sys.objects (Transact-SQL)sys.objects (Transact-SQL)

S’APPLIQUE À : ouiSQL Server ouiAzure SQL Database ouiAzure SQL Data Warehouse ouiParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

Contient une ligne pour chaque objet défini par l’utilisateur, la portée de schéma qui est créée au sein d’une base de données, y compris la fonction scalaire définie par l’utilisateur compilée en mode natif.Contains a row for each user-defined, schema-scoped object that is created within a database, including natively compiled scalar user-defined function.

Pour plus d’informations, consultez Fonctions scalaires définies par l’utilisateur pour l’OLTP en mémoire.For more information, see Scalar User-Defined Functions for In-Memory OLTP.

Notes

sys.objects n'affiche pas les déclencheurs DDL car ceux-ci ne sont pas définis avec une étendue de schéma.sys.objects does not show DDL triggers, because they are not schema-scoped. Tous les déclencheurs, DML et DDL, se trouvent dans sys.triggers.All triggers, both DML and DDL, are found in sys.triggers. Sys.Triggers prend en charge un mélange de règles de portée de nom pour les différents types de déclencheurs.sys.triggers supports a mixture of name-scoping rules for the various kinds of triggers.

Nom de la colonneColumn name Type de donnéesData type DescriptionDescription
namename sysnamesysname Nom de l'objet.Object name.
object_idobject_id Intint Numéro d'identification de l'objet.Object identification number. Unique dans une base de données.Is unique within a database.
principal_idprincipal_id intint ID du propriétaire, si celui-ci est différent du propriétaire du schéma.ID of the individual owner, if different from the schema owner. Par défaut, le propriétaire du schéma détient les objets contenus dans le schéma.By default, schema-contained objects are owned by the schema owner. Cependant, il est possible de spécifier un autre propriétaire à l'aide de l'instruction ALTER AUTHORIZATION qui permet de changer de propriétaire.However, an alternate owner can be specified by using the ALTER AUTHORIZATION statement to change ownership.

Prend la valeur NULL en l'absence d'un autre propriétaire.Is NULL if there is no alternate individual owner.

Prend la valeur NULL si le type de l'objet est un des types suivants :Is NULL if the object type is one of the following:

C = contrainte CHECKC = CHECK constraint

D = DEFAULT (contrainte ou autonome)D = DEFAULT (constraint or stand-alone)

F = Contrainte FOREIGN KEYF = FOREIGN KEY constraint

PK = Contrainte PRIMARY KEYPK = PRIMARY KEY constraint

R = Règle (ancienne, autonome)R = Rule (old-style, stand-alone)

TA = Déclencheur d'assembly (intégration CLR)TA = Assembly (CLR-integration) trigger

TR = Déclencheur SQLTR = SQL trigger

UQ = Contrainte UNIQUEUQ = UNIQUE constraint

EC = contrainte d’arêteEC = Edge constraint
schema_idschema_id intint ID du schéma dans lequel se trouve l'objet.ID of the schema that the object is contained in.

Les objets système compris dans l'étendue du schéma sont toujours contenus dans les schémas sys ou INFORMATION_SCHEMA.Schema-scoped system objects are always contained in the sys or INFORMATION_SCHEMA schemas.
parent_object_idparent_object_id intint Identificateur de l'objet auquel appartient cet objet.ID of the object to which this object belongs.

0 = Il ne s'agit pas d'un objet enfant.0 = Not a child object.
typetype char(2)char(2) Type d’objet :Object type:

AF = Fonction d'agrégation (CLR)AF = Aggregate function (CLR)

C = contrainte CHECKC = CHECK constraint

D = DEFAULT (contrainte ou autonome)D = DEFAULT (constraint or stand-alone)

F = Contrainte FOREIGN KEYF = FOREIGN KEY constraint

FN = Fonction scalaire SQLFN = SQL scalar function

FS = Fonction scalaire d'assembly (CLR)FS = Assembly (CLR) scalar-function

FT = Fonction table d'assembly (CLR)FT = Assembly (CLR) table-valued function

IF = Fonction table en ligne SQLIF = SQL inline table-valued function

IT = table interneIT = Internal table

P = Procédure stockée SQLP = SQL Stored Procedure

PC = procédure stockée d’Assembly (CLR)PC = Assembly (CLR) stored-procedure

PG = Repère de planPG = Plan guide

PK = Contrainte PRIMARY KEYPK = PRIMARY KEY constraint

R = Règle (ancienne, autonome)R = Rule (old-style, stand-alone)

RF = Procédure de filtre de réplicationRF = Replication-filter-procedure

S = Table de base systèmeS = System base table

SN = SynonymeSN = Synonym

SO = Objet séquenceSO = Sequence object

U = Table (définie par l'utilisateur)U = Table (user-defined)

V = VueV = View

EC = contrainte d’arêteEC = Edge constraint



S'applique à: SQL Server 2012 (11.x)SQL Server 2012 (11.x) jusqu'à SQL Server 2017SQL Server 2017.Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) through SQL Server 2017SQL Server 2017.



SQ = File d'attente du serviceSQ = Service queue

TA = Déclencheur d'assembly DML (CLR)TA = Assembly (CLR) DML trigger

TF = SQL-fonction tableTF = SQL table-valued-function

TR = Déclencheur DML SQLTR = SQL DML trigger

TT = Type de tableTT = Table type

UQ = Contrainte UNIQUEUQ = UNIQUE constraint

X = Procédure stockée étendueX = Extended stored procedure



S’applique aux: SQL Server 2016 (13.x)SQL Server 2016 (13.x) via SQL Server 2017SQL Server 2017, Azure SQL DatabaseAzure SQL Database, Azure SQL Data WarehouseAzure SQL Data Warehouse, Parallel Data WarehouseParallel Data Warehouse.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) through SQL Server 2017SQL Server 2017, Azure SQL DatabaseAzure SQL Database, Azure SQL Data WarehouseAzure SQL Data Warehouse, Parallel Data WarehouseParallel Data Warehouse.



ET = la Table externeET = External Table
type_desctype_desc nvarchar(60)nvarchar(60) Description du type d'objet :Description of the object type:

AGGREGATE_FUNCTIONAGGREGATE_FUNCTION

CHECK_CONSTRAINTCHECK_CONSTRAINT

CLR_SCALAR_FUNCTIONCLR_SCALAR_FUNCTION

CLR_STORED_PROCEDURECLR_STORED_PROCEDURE

CLR_TABLE_VALUED_FUNCTIONCLR_TABLE_VALUED_FUNCTION

CLR_TRIGGERCLR_TRIGGER

DEFAULT_CONSTRAINTDEFAULT_CONSTRAINT

EXTENDED_STORED_PROCEDUREEXTENDED_STORED_PROCEDURE

FOREIGN_KEY_CONSTRAINTFOREIGN_KEY_CONSTRAINT

INTERNAL_TABLEINTERNAL_TABLE

PLAN_GUIDEPLAN_GUIDE

PRIMARY_KEY_CONSTRAINTPRIMARY_KEY_CONSTRAINT

REPLICATION_FILTER_PROCEDUREREPLICATION_FILTER_PROCEDURE

RULERULE

SEQUENCE_OBJECTSEQUENCE_OBJECT



S'applique à: SQL Server 2012 (11.x)SQL Server 2012 (11.x) jusqu'à SQL Server 2017SQL Server 2017.Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) through SQL Server 2017SQL Server 2017.



SERVICE_QUEUESERVICE_QUEUE

SQL_INLINE_TABLE_VALUED_FUNCTIONSQL_INLINE_TABLE_VALUED_FUNCTION

SQL_SCALAR_FUNCTIONSQL_SCALAR_FUNCTION

SQL_STORED_PROCEDURESQL_STORED_PROCEDURE

SQL_TABLE_VALUED_FUNCTIONSQL_TABLE_VALUED_FUNCTION

SQL_TRIGGERSQL_TRIGGER

SYNONYMSYNONYM

SYSTEM_TABLESYSTEM_TABLE

TABLE_TYPETABLE_TYPE

UNIQUE_CONSTRAINTUNIQUE_CONSTRAINT

USER_TABLEUSER_TABLE

VIEWVIEW
create_datecreate_date datetimedatetime Date de création de l'objet.Date the object was created.
modify_datemodify_date datetimedatetime Date de la dernière modification de l'objet avec l'instruction ALTER.Date the object was last modified by using an ALTER statement. Si l'objet est une table ou une vue, modify_date change également lorsqu'un index cluster sur la table ou la vue est créé ou modifié.If the object is a table or a view, modify_date also changes when a clustered index on the table or view is created or altered.
is_ms_shippedis_ms_shipped bitbit Un composant SQL ServerSQL Server interne a créé l'objet.Object is created by an internal SQL ServerSQL Server component.
is_publishedis_published bitbit L'objet est publié.Object is published.
is_schema_publishedis_schema_published bitbit Seul le schéma de l'objet est publié.Only the schema of the object is published.

NotesRemarks

Vous pouvez appliquer le OBJECT_ID, OBJECT_NAME, et OBJECTPROPERTY() des fonctions intégrées pour les objets affichés dans sys.objects.You can apply the OBJECT_ID, OBJECT_NAME, and OBJECTPROPERTY() built-in functions to the objects shown in sys.objects.

Il existe une version de cette vue avec le même schéma, appelé sys.system_objects, qui affiche les objets système.There is a version of this view with the same schema, called sys.system_objects, that shows system objects. Il existe une autre vue appelée sys.all_objects qui affiche les objets système et utilisateur.There is another view called sys.all_objects that shows both system and user objects. Ces trois affichages catalogue ont la même structure.All three catalog views have the same structure.

Dans cette version de SQL ServerSQL Server, un index étendu, tel qu'un index XML ou un index spatial, est considéré comme une table interne dans sys.objects (type = IT et type_desc = INTERNAL_TABLE).In this version of SQL ServerSQL Server, an extended index, such as an XML index or spatial index, is considered an internal table in sys.objects (type = IT and type_desc = INTERNAL_TABLE). Pour un index étendu :For an extended index:

  • name correspond au nom interne de la table d'index.name is the internal name of the index table.

  • parent_object_id est le object_id de la table de base.parent_object_id is the object_id of the base table.

  • Les colonnes is_ms_shipped, is_published et is_schema_published ont la valeur 0.is_ms_shipped, is_published and is_schema_published columns are set to 0.

Vues système utile connexesRelated useful system views
Des sous-ensembles des objets peuvent être affichés à l’aide de vues système pour un type spécifique d’objet, tel que :Subsets of the objects can be viewed by using system views for a specific type of object, such as:

AutorisationsPermissions

La visibilité des métadonnées dans les affichages catalogue est limitée aux éléments sécurisables qu'un utilisateur détient ou pour lesquels des autorisations lui ont été accordées.The visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. Pour plus d'informations, consultez Metadata Visibility Configuration.For more information, see Metadata Visibility Configuration.

ExemplesExamples

R.A. Retour de tous les objets modifiés au cours des N derniers joursReturning all the objects that have been modified in the last N days

Avant d'exécuter la requête suivante, remplacez <database_name> et <n_days> par des valeurs valides.Before you run the following query, replace <database_name> and <n_days> with valid values.

USE <database_name>;  
GO  
SELECT name AS object_name   
  ,SCHEMA_NAME(schema_id) AS schema_name  
  ,type_desc  
  ,create_date  
  ,modify_date  
FROM sys.objects  
WHERE modify_date > GETDATE() - <n_days>  
ORDER BY modify_date;  
GO  

B.B. Retour des paramètres d'une fonction ou d'une procédure stockée spécifiqueReturning the parameters for a specified stored procedure or function

Avant d'exécuter la requête suivante, remplacez <database_name> et <schema_name.object_name> par des noms valides.Before you run the following query, replace <database_name> and <schema_name.object_name> with valid names.

USE <database_name>;  
GO  
SELECT SCHEMA_NAME(schema_id) AS schema_name  
    ,o.name AS object_name  
    ,o.type_desc  
    ,p.parameter_id  
    ,p.name AS parameter_name  
    ,TYPE_NAME(p.user_type_id) AS parameter_type  
    ,p.max_length  
    ,p.precision  
    ,p.scale  
    ,p.is_output  
FROM sys.objects AS o  
INNER JOIN sys.parameters AS p ON o.object_id = p.object_id  
WHERE o.object_id = OBJECT_ID('<schema_name.object_name>')  
ORDER BY schema_name, object_name, p.parameter_id;  
GO  

C.C. Retour de toutes les fonctions définies par l'utilisateur dans une base de donnéesReturning all the user-defined functions in a database

Avant d'exécuter la requête suivante, remplacez <database_name> par un nom de base de données valide.Before you run the following query, replace <database_name> with a valid database name.

USE <database_name>;  
GO  
SELECT name AS function_name   
  ,SCHEMA_NAME(schema_id) AS schema_name  
  ,type_desc  
  ,create_date  
  ,modify_date  
FROM sys.objects  
WHERE type_desc LIKE '%FUNCTION%';  
GO  

D.D. Retour du propriétaire de chaque objet dans un schéma.Returning the owner of each object in a schema.

Avant d'exécuter la requête suivante, remplacez toutes les occurrences de <database_name> et <schema_name> par des noms valides.Before you run the following query, replace all occurrences of <database_name> and <schema_name> with valid names.

USE <database_name>;  
GO  
SELECT 'OBJECT' AS entity_type  
    ,USER_NAME(OBJECTPROPERTY(object_id, 'OwnerId')) AS owner_name  
    ,name   
FROM sys.objects WHERE SCHEMA_NAME(schema_id) = '<schema_name>'  
UNION   
SELECT 'TYPE' AS entity_type  
    ,USER_NAME(TYPEPROPERTY(SCHEMA_NAME(schema_id) + '.' + name, 'OwnerId')) AS owner_name  
    ,name   
FROM sys.types WHERE SCHEMA_NAME(schema_id) = '<schema_name>'   
UNION  
SELECT 'XML SCHEMA COLLECTION' AS entity_type   
    ,COALESCE(USER_NAME(xsc.principal_id),USER_NAME(s.principal_id)) AS owner_name  
    ,xsc.name   
FROM sys.xml_schema_collections AS xsc JOIN sys.schemas AS s  
    ON s.schema_id = xsc.schema_id  
WHERE s.name = '<schema_name>';  
GO  

Voir aussiSee Also

Affichages catalogue (Transact-SQL) Catalog Views (Transact-SQL)
sys.all_objects (Transact-SQL) sys.all_objects (Transact-SQL)
sys.system_objects (Transact-SQL) sys.system_objects (Transact-SQL)
sys.triggers (Transact-SQL) sys.triggers (Transact-SQL)
Vues de catalogue d’objets (Transact-SQL) Object Catalog Views (Transact-SQL)
Interrogation des catalogues système SQL Server FAQ Querying the SQL Server System Catalog FAQ
sys.internal_tables (Transact-SQL)sys.internal_tables (Transact-SQL)