PARSENAME (Transact-SQL)

**APPLIES TO:** ![yes](media/yes.png)SQL Server (starting with 2012) ![yes](media/yes.png)Azure SQL Database ![yes](media/yes.png)Azure SQL Data Warehouse ![yes](media/yes.png)Parallel Data Warehouse

Returns the specified part of an object name. The parts of an object that can be retrieved are the object name, owner name, database name, and server name.

[!NOTE]
The PARSENAME function does not indicate whether an object by the specified name exists. PARSENAME just returns the specified part of the specified object name.

Topic link icon Transact-SQL Syntax Conventions

Syntax

PARSENAME ( 'object_name' , object_piece )   

Arguments

object_name
Is the name of the object for which to retrieve the specified object part. object_name is sysname. This parameter is an optionally-qualified object name. If all parts of the object name are qualified, this name can have four parts: the server name, the database name, the owner name, and the object name.

object_piece
Is the object part to return. object_piece is of type int, and can have these values:

1 = Object name

2 = Schema name

3 = Database name

4 = Server name

Return Types

nchar

Remarks

PARSENAME returns NULL if one of the following conditions is true:

The requested object part has a length of 0 and is not a valid Microsoft Microsoft SQL Server identifier. A zero-length object name renders the complete qualified name as not valid.

Examples

The following example uses PARSENAME to return information about the Person table in the AdventureWorks2012 database.

-- Uses AdventureWorks  
  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 1) AS 'Object Name';  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 2) AS 'Schema Name';  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 3) AS 'Database Name';  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 4) AS 'Server Name';  
GO  

Here is the result set.

Object Name
------------------------------
DimCustomer

(1 row(s) affected)

Schema Name
------------------------------
dbo

(1 row(s) affected)

Database Name
------------------------------
AdventureWorksPDW2012

(1 row(s) affected)

Server Name
------------------------------
(null)

(1 row(s) affected)

See Also

QUOTENAME (Transact-SQL)
ALTER TABLE (Transact-SQL)
CREATE TABLE (Transact-SQL)
System Functions (Transact-SQL)