System Tables (Transact-SQL)

Applies to: SQL Server Azure SQL Managed Instance

The topics in this section describe the system tables in SQL Server.

The system tables should not be changed directly by any user. For example, do not try to modify system tables with DELETE, UPDATE, or INSERT statements, or user-defined triggers.

Referencing documented columns in system tables is permissible. However, many of the columns in system tables are not documented. Applications should not be written to directly query undocumented columns. Instead, to retrieve information stored in the system tables, applications should use any one of the following components:

  • System stored procedures

  • Transact-SQL statements and functions

  • SQL Server Management Objects (SMO)

  • Replication Management Objects (RMO)

  • Database API catalog functions

These components make up a published API for obtaining system information from SQL Server. Microsoft maintains the compatibility of these components from release to release. The format of the system tables depends upon the internal architecture of SQL Server and may change from release to release. Therefore, applications that directly access the undocumented columns of system tables may have to be changed before they can access a later version of SQL Server.

In This Section

The system table topics are organized by the following feature areas:

See Also

Compatibility Views (Transact-SQL)
Catalog Views (Transact-SQL)