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

MSSQL
mssql 两种数据插入方式
mssql @@ERROR 使用
sqlserver 数据库日志备份和恢复步骤
SQL Server日志过大会影响查询结果
SQLserver 实现分组统计查询(按月、小时分组)
SQL语句查询是否为空 =null及null
对有insert触发器表取IDENTITY值时发现的问题
SQL SERVER 查询正在实行的SQL语句
sql 随机抽取几条数据的方法 推荐
sql 多条件组合查询,并根据指定类别找出所有最小子类别的SQL语句备忘
Java 实现连接sql server 2000
SQL Server 不存在或访问被拒绝(转)
分页查询 效率最高
sqlserver 系统存储过程 中文说明
sql 多表连接查询
SQL SERVER 自增列
丢失的数据忘记备份的处理方法[图文]
SqlServer 序号列的实现方法
MsSql 存储过程分页代码 [收集多篇]
SQLServer 数据库中如何保持数据一致性

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


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