⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mdmschierarchicalcursorsdatashapingdetail.htm

📁 ADO使用手册,非常详细
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML dir=ltr>
<HEAD>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=gb2312"><title>数据构形总结</title>
<style>@import url(msdn_ie4.css);</style>
</HEAD>
<BODY>
<h2><a name="mdmschierarchicalcursorsdatashapingdetail"></a>数据构形总结</h2>
<p><a href="dir.htm">目录</a></p>
<p>
ADO 2.0 推出了数据构形功能、分级记录集和 Shape 命令语法。</p>
<p>
ADO 2.1 通过插入 COMPUTE 命令推出重构形、孙子合计和参数化命令。</p>
<p class=label>
<b>数据构形</b></p>
<p>
数据构形使您能够定义成形 <b>Recordset</b> 的列、由列表示的条目之间的关系和数据充填到 <b>Recordset</b> 的方式。</p>
<p>
成形 <b>Recordset</b> 的列可以包含数据、对另一个 <b>Recordset</b> 的引用、对 <b>Recordset</b> 一个行进行计算得到的值、对整个 <b>Recordset</b> 的列进行操作所得到的值,或者可以是新虚构的空列。</p>
<p>
在检索包含对另一个 <b>Recordset</b> 的引用的列的值时,ADO 将自动返回由引用表示的实际的 <b>Recordset</b>。包含另一个<b> Recordset</b> 的 <b>Recordset</b> 被称为“分级<i> </i><b>Recordset</b>”。分级 <b>Recordsets</b> 展示的是父-子关系,其中“父”是包含的 <b>Recordset</b>,而“子”是被包含的 <b>Recordset</b>。对 <b>Recordset</b> 的引用实际是对子的子集合(即“子集”)的引用。单个父可以包含多个子 <b>Recordset</b>。</p>
<p>
ADO 2.0 同时推出了新的 Shape 命令语法,能够通过编程创建成形的 <b>Recordset</b> 对象。Shape 命令可以象其他任何 ADO 命令文本一样发出。</p>
<p>
使用 Shape 命令语法,可通过两种途径创建分级的 <b>Recordset </b>对象。其一是将子 <b>Recordset </b>追加到父<b> Recordset</b>,一般,父和子至少必需有一个列:在父的行中列的值与子的所有行中列的值相同。</p>
<p>
其二则是从子 <b>Recordset </b>产生父 <b>Recordset</b>。在引用子<b> Recordset</b> 的父中,必须有子集列。创建其他父列的途径是:对子列的合计运算,运算 <b>Recordset </b>行的表达式,使用 <b>BY </b>关键字指定分组的列,或追加新的空列。</p>
<p>
可将分级 <b>Recordset</b> 对象嵌套到所需的任何深度(即创建子 <b>Recordset</b> 对象的子 <b>Recordset</b> 对象,如此继续)。</p>
<p>
通过程序或相应的可视控件,可以访问成形的 <b>Recordset</b> 的 <b>Recordset </b>组件。</p>
<p>
Microsoft 提供了能够生成 Shape 命令的可视化工具(请参阅 Visual Basic 主题,“数据环境设计者”)以及另一个能够显示分级游标的可视化工具(请参阅 Visual Basic 主题,“使用 Microsoft Hierarchical Flexgrid Control”)。</p>
<p class=label>
<b>重构形</b></p>
<p>
由 Shape 命令的子句创建的 <b>Recordset</b> 可以被赋值为“别名”(一般使用 <b>AS</b> 关键字)。在 ADO 2.1 中,成形 <b>Recordset</b> 的别名可以在完全不同的命令中引用。就是说,可以发出新的 Shape 命令来更改(即重构形)以前构形的 <b>Recordset</b>。为了支持该功能,ADO 提供了新的 <b>Recordset</b> 对象 <a href="mdproname.htm">Name</a> 属性。</p>
<p>
所受限制为不可以将列追加到现有的 <b>Recordset </b>中,或在任何插入 COMPUTE 的子句中对参数化的 <b>Recordset</b> 或 <b>Recordset </b>对象进行重构形,或对除正在被构形的 <b>Recordset </b>以外的任何 <b>Recordset </b>执行合计操作。</p>
<p class=label>
<b>孙子合计</b></p>
<p>
用 Shape 命令的子句创建的子集列可以得到“子集-别名名称”(一般使用 <b>AS</b> 关键字)。可以使用用以标识包含了列的子的完整名称,在子集中标识成形 <b>Recordset </b>的任何列。例如,如果父子集 chap1 包含拥有数量列 amt 的子子集 chap2,那么完整名称将是 chap1.chap2.amt。然后,完整名称可以用作参数在合计函数 (SUM, AVG, MAX, MIN, COUNT, STDEV, or ANY) 中使用。</p>
<p class=label>
<b>使用插入 COMPUTE 命令的参数化命令</b></p>
<p>
典型的参数化形状 <i>APPEND</i> 命令含有通过查询命令创建父 <b>Recordset</b> 的子句,以及通过参数化查询命令(即包含参数占位符:问号“?”的命令)创建子 <b>Recordset</b> 的另一个子句。最终得到的成形 <b>Recordset</b> 有两层,父在上层而子占据下层。</p>
<p>
创建子 <b>Recordset</b> 的子句现在可以是任意数量的嵌套形状 <i>COMPUTE</i> 命令,在最深的嵌套命令中包含了参数化查询。所得到的成形 <b>Recordset</b> 有多层,父占据最上层,子占据最下层,而由形状 <i>COMPUTE</i> 命令生成的任意数量 <b>Recordsets</b> 则占据插入的层。</p>
<p>
该特性典型的用法是调用合计函数和形状<i> COMPUTE</i> 命令的分组功能,创建带有有关子 <b>Recordset </b>的分析信息的插入 <b>Recordset</b> 对象。总之,因为这是参数化 Shape 命令,每当父的子集列被访问时,就可检索新的子 <b>Recordset</b>。因为插入层来源于子,它们也将被重新计算。</p>
<center> <A HREF="http://www.51windows.Net">www.51windows.Net</A></center>
<SCRIPT LANGUAGE="JavaScript" src="/log/sitelog2.asp"></SCRIPT>
<script src="script.js"></script></BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -