Parse(数据库引擎)
Parse 将 hierarchyid 的规范字符串表示形式转换为 hierarchyid 值。当发生从字符串类型到 hierarchyid 的转换时,将隐式调用 Parse。作用与 ToString 相反。Parse() 是静态方法。
语法
-- 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 )
参数
input
Transact-SQL:要转换的字符数据类型值。CLR:要计算的字符串值。
返回类型
**SQL Server 返回类型:**hierarchyid
**CLR 返回类型:**SqlHierarchyId
注释
如果 Parse 收到的值不是 hierarchyid 的有效字符串表示形式,则会引发异常。例如,如果 char 数据类型包含尾随空格,则会引发异常。
示例
A. 不使用表转换 Transact-SQL 值
下面的代码示例使用 ToString 将 hierarchyid 值转换为字符串,并使用 Parse 将字符串值转换为 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 示例
下面的代码段调用 Parse() 方法:
string input = “/1/2/”;
SqlHierarchyId.Parse(input);