当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server 2008 层次ID数据类型

MSSQL
MSSQL 数据库备份和还原的几种方法 图文教程
GridView自定义分页的四种存储过程
sqlserver 中charindex/patindex/like 的比较
SQL2005 大数据量检索的分页
MSSQL2005 INSERT,UPDATE,DELETE 之OUTPUT子句使用实例
MSSQL 字符段分段更新
SQLServer2005中的SQLCMD工具使用
Sql server2005 优化查询速度50个方法小结
SQL2005 四个排名函数(row_number、rank、dense_rank和ntile)的比较
sql2005 数据同步方法
配置 SQLServer2005 以允许远程连接
安装SQL2005 29506错误码的解决方案
SQL Server 2008的升级和部署问题
SQL Server教程:读取第三方数据库的数据
用Trigger规范insert, update的值

MSSQL 中的 SQL Server 2008 层次ID数据类型


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 88 ::
收藏到网摘: n/a

目录

准备工作1

练习:使用HierarchyID数据类型2

准备工作

预计完成本实验所需的时间

40 分钟

目标

在完成本实验后,您将可以:

处理SQL Server 2008当中的层次ID数据类型

先决条件

在完成本实验前,您必须具有:

编写Transact-SQL 脚本与使用SQL Server Management Studio的相关经验。

实验场景

SQL Server 2008允许数据库应用程序以一种比现有方法更为高效的方式来构建树状结构。HierarchyId是一种新的系统类型,它存储的值可以表示在一个层次结构树中的结点。这种新的类型提供了一种非常灵活的编程模型。它实现为一个CLR UDT,并开放了许多高效、有用的内置方法,用来创建和操作层次结构中的结点。

虚拟机环境

从开始菜单或桌面上启用Microsoft Virtual PC 。如果Virtual PC 控制台没有启用,请查看系统托盘,然后双击系统托盘当中的Microsoft Virtual PC 。

选择Sql08 然后点击Start。

在虚拟机运行起来后,可以通过点击右Alt+Del 来向虚拟机发送一个Ctrl+Alt+Del 命令。

在登录窗口中,输入以下信息:

User name: administrator

Password: password01!

练习:使用HierarchyID数据类型

在SQL Server 2008 中,允许数据库应用程序以一种比现有方法更为高效的方式来构建树状结构。HierarchyId是一种新的系统类型,它存储的值可以表示在一个层次结构树中的结点。这种新的类型提供了一种非常灵活的编程模型。它实现为一个CLR UDT,并开放了许多高效、有用的内置方法,用来创建和操作层次结构中的结点。

在本实验中,我们希望在数据库中存储公司部门的组织结构关系。首先,我们使用传统的方式进行组织关系的存储。

原有组织结构存储方式

打开C:SQLHOLS 文件夹,然后打开HierarchyID 目录当中的 “HierarchyID Data Type Demo”文件。

在窗口打开后,点击窗体上方工具条上的Execute 按钮,然后将看到如下图所示的执行结果:

可以看到,在原有数据库中,企业部门的组织结构关系,使用数据行中的ParentID来表示该部门的上级部门。

点击Next按钮。

查询原有组织结构

要查询原有组织结构关系,我们需要使用循环的方式进行查询,仔细阅读查询语句,然后点击工具条上的Execute,执行T-SQL语句。

此时,看到如下结果:

在窗口打开后,点击窗体上方工具条上的Execute 按钮,然后将看到如下图所示的执行结果:

点击Next按钮。

使用HierarchyID创建组织结构关系

仔细阅读查询语句,然后点击工具条上的Execute,执行T-SQL语句。

此时,看到如下结果:

点击Next按钮。

为了创建后续的部门数据,我们创建一个存储过程AddDepartmentNew,前面两个参数是部门的ID和名称,第三个参数是上级部门的ID。然后,使用刚刚创建的存储过程添加部门数据。仔细阅读查询语句,然后点击工具条上的Execute,执行T-SQL语句。

此时,看到如下结果:

点击Next按钮。

使用HierarchyID进行查询

接下来,我们使用HierarchyID进行查询,此时,可以使用HierarchyID数据类型的一些方法来进行数据的查询。仔细阅读查询语句,然后点击工具条上的Execute,执行T-SQL语句。

此时,看到如下结果:

点击Next按钮。

要对比两种查询,可以点击窗体上方工具条上的Execute 按钮,然后将看到如下图所示的比较结果:

点击Next按钮。