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

MSSQL
SQL Server SA权限总结经典技术
ASP数据库编程SQL常用技巧
SQL SERVER数据库开发之存储过程应用
SQL Server 2000的安全配置
MSSQL经典语句
SQL 经典语句
有用的SQL语句(删除重复记录,收缩日志)
Access 数据类型与 MS SQL 数据类型的相应
SQL语句示例
SQL数据类型详解
将Sql Server对象的当前拥有者更改成目标拥有者
MSSQL内外连接(INNER JOIN)语句详解
SQL 外链接操作小结 inner join left join right join
SQL Server中网络备份一例
SQL语句导入导出大全
SQL 新增/修改 表字段列的类型等
系统存储过程,sp_executesql
sql2005开启xp_cmdshell
实例学习SQL的Select命令
删除数据库中重复数据的几个方法

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


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