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

MSSQL
修复断电等损坏的SQL 数据库
SQL 返回期间内的所有日期
数据库中的内容字段被挂马的替换方法 SQL注入
同一个sql语句 连接两个数据库服务器
SQL Server 空值处理策略[推荐]
sql2005 create file遇到操作系统错误5拒绝访问 错误1802
SQL SERVER 删除重复内容行
SQL SERVER 的SQL语句优化方式小结
数据库高并发情况下重复值写入的避免 字段组合约束
一个有趣的SQL命题 用一条语句切换BIT型的真假值
AspNetPager分页控件 存储过程
SQL Server自动生成日期加数字的序列号
远程连接局域网内的SQL Server 的方法
把数据批量插入具有Identity列的表的方法
SQL Server 索引维护sql语句
从两种SQL表连接写法来了解过去
SQLServer 循环批处理
从每个分类选择10条记录的sql语句
SQLServer XML查询快速入门(18句话)
被遗忘的SQLServer比较运算符谓词

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


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