SCHEMA_ID (Transact-SQL)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL analytics endpoint in Microsoft Fabric Warehouse in Microsoft Fabric

Returns the schema ID associated with a schema name.

Database schemas act as namespaces or containers for objects, such as tables, views, procedures, and functions, that can be found in the sys.objects catalog view.

Each schema has an owner. The owner is a security principal.

Transact-SQL syntax conventions

Syntax

SCHEMA_ID ( [ schema_name ] )

Note

To view Transact-SQL syntax for SQL Server 2014 (12.x) and earlier versions, see Previous versions documentation.

Arguments

schema_name

The name of the schema. schema_name is sysname. If schema_name isn't specified, SCHEMA_ID returns the ID of the default schema of the caller.

Return types

int

NULL is returned if schema_name isn't a valid schema.

Remarks

SCHEMA_ID returns IDs of system schemas and user-defined schemas. SCHEMA_ID can be called in a select list, in a WHERE clause, and anywhere an expression is allowed.

Examples

A. Return the default schema ID of a caller

SELECT SCHEMA_ID();

B. Return the schema ID of a named schema

SELECT SCHEMA_ID('dbo');