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

MSSQL
在SQL Server下数据库链接的使用
SQL Server数据库中处理空值时常见问题
巧用一条SQL语句实现其它进制到十进制转换
通过JDBC连接DB2数据库技巧
深入浅出SQL教程之嵌套SELECT语句
SQL Server备份文件中导入现存数据库
SQL多表格查询合并至单一声明的常用方式
也谈如何缩小SQL SERVER日志文件
四个语句帮你提高 SQL Server 的伸缩性
用JavaBean编写SQL Server数据库连接类
sql2k中新增加的Function的sqlbook 的帮助
Mssql处理孤立用户的存储过程
探讨SQL Server中Case 的不同用法
快速清除SQLServer日志的两种方法
解决Sql Server警报的疑难问题
MySQL的数据类型和建库策略
SQL SERVER应用问题解答13例(一)
SQL SERVER应用问题解答13例(二)
多种还原.bak数据库文件方式
SQL语句中的一些特殊参数如何用变量来代替

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 157 ::
收藏到网摘: 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按钮。