适用于:SQL Server
Azure SQL 数据库
Azure SQL 托管实例
Microsoft Fabric 预览版中的 SQL 数据库
返回具有 this 逻辑表示形式的字符串 。 进行从 hierarchyid 到字符串类型的转换时将隐式调用 ToString 。 它的作用与 分析(数据库引擎)相反。
Syntax
-- Transact-SQL syntax
node.ToString  ( )
-- This is functionally equivalent to the following syntax  
-- which implicitly calls ToString():  
CAST(node AS nvarchar(4000))  
-- CLR syntax
string ToString  ( )
Return types
SQL Server 返回类型:nvarchar(4000)
CLR 返回类型:String
Remarks
返回层次结构中的逻辑位置。 例如,/2/1/ 表示以下文件系统层次结构的第四行 (Microsoft SQL Server):
/        C:\  
/1/      C:\Database Files  
/2/      C:\Program Files  
/2/1/    C:\Program Files\Microsoft SQL Server  
/2/2/    C:\Program Files\Microsoft Visual Studio  
/3/      C:\Windows  
Examples
A. 表中的 Transact-SQL 示例
下面的示例以 hierarchyid 数据类型和可读性更强的字符串格式返回 OrgNode 列  :
SELECT OrgNode,  
OrgNode.ToString() AS Node  
FROM HumanResources.EmployeeDemo  
ORDER BY OrgNode ;  
GO  
结果集如下。
OrgNode   Node  
0x        /  
0x58      /1/  
0x5AC0    /1/1/  
0x5B40    /1/2/  
0x5BC0    /1/3/  
0x5C20    /1/4/  
...  
B. 不使用表转换 Transact-SQL 值
下面的代码示例使用 ToString 将 hierarchyid 值转换为字符串,并使用  将字符串值转换为 hierarchyid。
DECLARE @StringValue AS nvarchar(4000), @hierarchyidValue AS hierarchyid  
SET @StringValue = '/1/1/3/'  
SET @hierarchyidValue = 0x5ADE  
  
SELECT hierarchyid::Parse(@StringValue) AS hierarchyidRepresentation,  
@hierarchyidValue.ToString() AS StringRepresentation ;
GO  
结果集如下。
hierarchyidRepresentation    StringRepresentation
-------------------------    -----------------------
0x5ADE                       /1/1/3/
C. CLR example
下面的代码段调用 ToString() 方法:
this.ToString()  
See also
              hierarchyid 数据类型方法引用
              层次结构数据 (SQL Server)
              hierarchyid (Transact-SQL)