SQL Server 2005使用关系数据库存储CFG的信息

数据库 SQL Server
我们今天主要向大家讲述的是SQL Server 2005使用关系数据库存储CFG的实际操作步骤,以下就是文章的主要内容描述。

本文主要向大家介绍的是用SQL Server 2005使用关系数据库存储CFG(控制流程图)的信息。在查询时,我们为了要得到所有dominate关系的相关结果,我们使用了CTE来进行递归查询。SQL Server 2005使用关系数据库存储CFG简单例子如下:

1. 现有表testRe结构如下

 

2. 欲得到的查询结果为找到id=’a'的项的所有pId,即b、c、d。

3. 使用CTE做递归查询:

 

  1. WITH Re_CTE(id, pId, Level)  
  2. Technorati 标签: sql server,CTE,递归,查询  
  3. AS  
  4. (  
  5. SELECT id, pId, 1 AS [Level]  
  6. FROM testRe  
  7. WHERE id=’a’  
  8. UNION ALL  
  9. SELECT t.id, t.pId, [Level] + 1  
  10. FROM testRe t INNER JOIN Re_CTE ct  
  11. ON t.id=ct.pId  
  12. )  
  13. SELECT * FROM Re_CTE  

 

其中,Level为可选项

4. SQL Server 2005使用关系数据库存储CFG,查询结果为:

 

5. CTE的简单说明(参考MSDNhttp://msdn.microsoft.com/zh-cn/library/ms186243%28SQL.90%29.ASPx):

 

  1. WITH cte_name(column_name [,...n])  
  2. AS  
  3. (  
  4. CTE_query_definition –- Anchor member is defined.  
  5. UNION ALL  
  6. CTE_query_definition –- Recursive member is defined referencing cte_name.  
  7. )  
  8. – Statement using the CTE  
  9. SELECT *  
  10. FROM cte_name  

一个递归 CTE 结构必须至少包含一个定位点成员和一个递归成员。

执行时:

将 CTE 表达式拆分为定位点成员和递归成员。

运行定位点成员,创建第一个调用或基准结果集 (T0)。

运行递归成员,将 Ti 作为输入,将 Ti+1 作为输出。

重复步骤 3,直到返回空集。

返回结果集。这是对 T0 到 Tn 执行 UNION ALL 的结果。

上述的相关内容就是对SQL Server 2005使用关系数据库存储CFG的描述,希望会给你带来一些帮助在此方面。

【编辑推荐】

  1. 安装MySQL Server 5.0在Linux上
  2. MySQL数据库移植到sql server遇到的N多问题
  3. SQL Server设定过滤条件提高索引效率
  4. MySQL数据库与MSSQL Server有什么不同?
  5. MySQL数据库与MS SQL Server不同之处的表现
责任编辑:佚名 来源: 互联网
相关推荐

2011-08-15 15:14:54

SQL Server存储过程异常处理

2022-09-16 11:33:24

数据库关系

2009-08-12 17:02:16

.NET向SQL Se

2011-08-11 09:12:31

SQL Server nolock

2018-04-12 12:45:02

数据库MySQL构建架构

2010-06-28 13:45:16

SQL Server

2022-09-05 09:32:07

数据库存储

2010-07-12 12:41:16

SQL Server

2010-07-08 15:26:05

SQL Server

2010-07-22 14:46:41

SQL Server

2023-10-10 11:18:42

Spring数据库

2011-08-22 09:55:30

SQL Server 排序

2010-07-02 10:47:20

SQL Server

2011-08-15 15:40:57

SQL Server 系统数据库

2011-08-02 13:44:49

JSPJDBCSQL Server

2010-06-30 13:19:17

SQL Server

2009-04-30 09:56:29

微软SQL Server 缓存依赖

2011-09-01 16:13:37

Visual StudSQL Server 存储过程

2010-07-09 11:06:13

SQL Server

2010-07-16 14:17:18

SQL Server
点赞
收藏

51CTO技术栈公众号