Parse(数据库引擎)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Microsoft Fabric 预览版中的 SQL 数据库

Parse 将 hierarchyid 的规范字符串表示形式转换为 hierarchyid 值。 当发生从字符串类型到 hierarchyid 的转换时,将隐式调用 Parse。 作用与 ToString 相反。 Parse() 是静态方法。

Syntax

-- Transact-SQL syntax  
hierarchyid::Parse ( input )  
-- This is functionally equivalent to the following syntax   
-- which implicitly calls Parse():  
CAST ( input AS hierarchyid )  
-- CLR syntax  
static SqlHierarchyId Parse ( SqlString input )   

Arguments

input
Transact-SQL:要转换的字符数据类型值。

CLR:要计算的字符串值。

Return Types

SQL Server 返回类型:hierarchyid

CLR 返回类型:SqlHierarchyId

Remarks

如果 Parse 收到的值不是 hierarchyid 的有效字符串表示形式,则会引发异常。 例如,如果 char 数据类型包含尾随空格,则会引发异常

Examples

A. 不使用表转换 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/

B. CLR example

下面的代码段调用 Parse() 方法:

string input = "/1/2/";  
SqlHierarchyId.Parse(input);  

See also

hierarchyid 数据类型方法引用
层次结构数据 (SQL Server)
hierarchyid (Transact-SQL)