Copyright: Thursday, March 13, 1997 10:14:09


显示活动查询的表名称。


列出选定数据源中的表和文件。


将选定的表添加到“表”窗格。按下此按钮后，“增加表”对话框仍不关闭，从而可以继续添加表。


关闭对话框。如果已通过单击“增加”按钮添加了表，则单击“关闭”按钮可返回到查询窗口查看新添加的表。如果还未添加表，则单击“关闭”按钮可返回到未作修改的查询窗口。


显示“表选项”对话框。该对话框依据用户选中的选项，控制“增加表”对话框和“查询向导 - 选择列”对话框中应列出哪些表。


如果希望“表”列表框仅显示由特定所有者所创建的表，可选中“所有者”列表组合框中的姓名。此对话框控制项的标志可能会随所使用的数据源的不同而不同。


选择要查询的表所在的数据库或路径。此对话框控制项的标志可能会随所使用的数据源的不同而不同。


包含可查询的数据源的列表。也可设置新的数据源以供查询。


可用“查询向导”逐步完成简单的查询，以向 Microsoft Excel 或其它的父程序返回数据。清除“使用查询向导创建/编辑查询”复选框，则表示用 Microsoft Query 而不是“查询向导”进行查询。


单击“确定”按钮可继续构造查询，或进一步定义数据源。如果选定了某一现存的查询，单击“打开”按钮可修改该查询。如果希望使用“查询向导”修改查询，以向 Microsoft Excel 返回不同的结果集合，就应确认选中了“使用查询向导创建/编辑查询”复选框。


单击“取消”可关闭对话框并返回到查询窗口。


单击“浏览”可查找计算机或网络上另外的数据源。


打开“数据源选项”对话框，该对话框显示可定位的数据源的默认路径。也可在计算机或网络上的其它位置查找数据源。


启动“Microsoft Office 助手”。显示提示和帮助主题，以辅助进行向导中的各步骤。


单击“最恰当的列宽”按钮可将选定列的列宽自动调整到最恰当的值。


基于当前所用的字体大小，键入希望在列中显示的字符数。Microsoft Query 在选定字段中实际上显示的字符数可能少于所给定的数，以补偿大写字母或其它非该字体平均大小的字母所多占据的空间。如果向 Microsoft Excel 或其它父应用程序返回数据，该父程序中的结果集合将不使用此处所设置的选项。


选中“标准列宽”复选框可应用默认列宽。默认列宽随数据窗格中所用的字体不同而不同。


对要指定条件的字段应用内置函数。既应选定在“字段”编辑组合框内指定的字段上所要计算的汇总类型，也应设定希望该汇总值在结果集中所满足的条件。有关在条件和结果集中使用内置函数的详细内容，请单击 [image] 。


选择要指定条件的字段。


选择指定的字段必须满足的标准（运算符）。


键入 Microsoft Query 在选择结果集的记录时所应使用的值，或单击“值”按钮，从运算符所用字段中的值列表中进行选择。


向查询添加指定的条件。如果“自动查询”选项处于打开状态，那么只有满足条件的记录才会出现在结果集中。“添加条件”对话框将仍保持打开状态，以便继续添加条件。


关闭“添加条件”对话框。通过单击“添加”按钮所添加的条件将保留于查询中。


显示“选定值”对话框，从运算符所用字段中的值列表中进行选择。


如果要求结果集必须同时满足现有的条件和新添加的条件，就应选中“与”选项按钮。


如果要求结果集或者满足现有的条件，或者满足新添加的条件，就应选中“或”选项按钮。


如果选中了“加入列标题”复选框，则复制数据窗格中的选定数据时，将包括相应的列标题。


如果选中了“加入行号”复选框，则复制数据窗格中的选定数据时，将包括相应的行号。


键入新表的名称，或者说用新表的名称取代当前默认表的名称。此对话框中设定的选项不影响用作模板的表。


键入要向新表中添加的字段的名称。当 Microsoft Query 在数据窗格中显示结果集时，每个字段用一列表示。


选择在“字段名”编辑框中键入的列的数据类型。该数据类型指出在新表中能向该字段输入何种类型的数据。有效的数据类型依赖于所用的数据源。例如，dBASE 数据源的字段的数据类型包括日期、备注和数字。


Microsoft Query 显示选定的数据类型所允许的最大字符数，包括数字类型的十进制分隔符。指定尽可能小的长度，将有助于节省磁盘空间和防止出现数据项错误。例如，如果邮政编码总是六个字符，就应将长度指定为 6。


输入数字字段中小数点右边应显示的数码个数。在“长度”编辑框中指定的数字字段的长度包括小数点所占用的位置。


将字段定义为必选字段。所谓必选字段就是指，对于表中每个完整的记录，该字段必须包含数据。


向表中添加所定义的字段。每次完成对整个“字段描述”组合框的设定之后，应单击“添加”按钮将该字段添加到表中。

一旦添加字段以后，就不能再修改该字段了。如果需要对某字段作出改动，可用“删除”按钮将其从“字段”列表框中删除，然后改动该字段，再重新将其添加到表中。


显示表中所有字段的名称和字段说明。


从表和查询中删除在“字段”列表框中选定的字段。


用所定义的字段创建表。Microsoft Query 将显示对话框，以证实该表的成功创建。


关闭“查看表的定义”对话框，但并不添加表，且重新显示“选择表”对话框。


单击“连接”按钮可连接数据库。ODBC 驱动程序将提示用户输入数据源所需的特定于该驱动程序的信息，包括数据源或数据库文件的名称及路径。有关指定外部数据源的详细内容，请单击 [image] 。


键入新数据源的名称。该名称将出现在“选择数据源”对话框内“数据库”标签上的列表框中。


从列表中选择 ODBC 驱动程序。可用的驱动程序依赖于安装时所选中的 ODBC 驱动程序选项。有关安装 ODBC 驱动程序的详细内容，请单击 [image] 。


从数据源中选择一个表用作构造查询时的默认表。如果使用“查询向导”构造查询，那么将只有该默认表出现在“查询向导”的“选择列”对话框中。如果要对数据源中的同一表执行多次查询，那么将该表选为默认表十分有用。


如果不想在每次打开数据源进行查询时都输入用户名和口令，可选中“在连接字符串中保存用户号及密码”复选框。对于某些数据源，此选项可能无效。


键入一个或多个希望 Microsoft Query 在其中查找数据源的路径，然后单击“添加”按钮，将该数据源路径添加到“数据源所在的文件夹”编辑框中。如果不能确定路径的准确信息，可单击“浏览”按钮，查找存储有扩展名为“*.dsn”的数据源文件的文件夹。


将数据源路径添加到“数据源所在的文件夹”编辑框中。


从“数据源所在的文件夹”编辑框中删除选定的数据源路径。单击“删除”按钮并不删除该路径中的数据源文件。


单击“浏览”按钮可查找存储有数据源文件的文件夹。


显示参数的名称。如果要修改该名称（即用作参数提示的文字），请在此处输入新的名称。


显示参数所应用的列的 SQL 数据类型。单击箭头可显示能够应用于此参数的其它数据类型。


显示参数的名称及参数所应用的列的 SQL 数据类型。如果要修改参数名称或数据类型，请在列表框内选定要修改的名称，然后单击“编辑”按钮以显示“编辑参数”对话框，该对话框即可用于编辑参数。


显示“编辑参数”对话框，在该对话框内可修改选定参数的名称和数据类型。


关闭此对话框，并应用所作的修改。


单击“取消”按钮可关闭此对话框，但并不应用所作的修改。单击“关闭”按钮可关闭此对话框并保留所作的修改。


如果在指定的时间内未能成功地完成与数据源的连接，就取消与数据源的连接操作。请在此处输入允许连接操作花费的最大秒数。

默认情况下，数据源的 ODBC 驱动程序预定义了一定的时间间隔，Microsoft Query 将试图在该时间间隔内完成与数据源的连接。如果不想限制 Microsoft Query 完成连接要用的时间，可清除“如果在下列时间内仍没有连接上，则取消连接：”复选框。在这种情况下，如果 Microsoft Query 无法连接到数据源，可按 ESC 键取消连接操作。


限制 Microsoft Query 返回到结果集中的记录数目。选中“返回的最大记录数”复选框，并在“记录”编辑框内输入希望 Microsoft Query 返回的最大记录数目。


关闭查询窗口之后，仍保持与数据源的连接。退出 Microsoft Query 后，才关闭与数据源的连接。选中此选项后，在同时打开对同一数据源的若干查询时，可省去重新连接所花费的时间。不过，如果要为数据源的连接时间付费，或建立了与若干不同数据源的连接，就最好不要选中此选项。


禁止 Microsoft Query 编辑查询结果。选中此选项后，“编辑”菜单内的“允许编辑”命令将无效。在某些情况下，即使未选中此选项，也不能编辑字段内的数据。不能编辑的字段类型包括：有多个表的查询中的字段，不允许修改数据源的查询中的字段，计算汇总的查询中的字段，以及被数据库本身锁定或禁用的字段。


对要指定条件的字段应用内置函数。既应选定在“字段”编辑组合框内指定的字段上所要计算的汇总类型，也应设定希望该汇总值在结果集中所满足的条件。有关在条件和结果集中使用内置函数的详细内容，请单击 [image] 。


选择要指定条件的字段。


选择在数据窗格中要修改的列。


如果希望对指定字段使用另外的名称，可在“列标题”编辑框中输入该名称。修改数据窗格中字段的列标题，并不影响数据源中的字段名称。如果要向 Microsoft Excel 或其它父程序返回数据，将使用数据源中字段的原有名称。


如果希望在列中显示该字段中的值的汇总，可在此编辑组合框中选择要显示的汇总类型。


为要添加到数据窗格中的字段选择名称或输入表达式。可用表达式对某些字段值进行计算（例如，Price*Quantity），并将结果置于新的列内。


输入要执行的 SQL 语句。如果用 [image] 打开了现有的 SQL 文件，Microsoft Query 将在“SQL 语句”列表框中显示该文件中的 SQL 语句。有关在 Microsoft Query 中创建、编辑或查看 SQL 语句的详细内容，请单击 [image] 。


运行 SQL 语句或过程，然后在数据窗格中显示查询的结果集合（如果该查询返回了数据）。


关闭对话框，但不执行 SQL 语句或过程。


显示“打开查询”对话框。该对话框打开现有的 SQL 文件，并在“SQL 语句”列表框中显示该文件的内容。


显示“另存为”对话框。在该对话框中，可保存新的 SQL 语句，保存对现有语句的修改，或者用另外的名称保存现有语句或过程的备份。


显示“选择过程”对话框。在该对话框中，可选择希望执行的过程。可用的过程依赖于所用的数据源。Microsoft Query 不执行带有输出参数的过程，且不显示函数的返回值。有关细节可咨询数据库管理员或查阅数据库文档。


显示“选择数据源”对话框。在该对话框中，可选择所需的数据源。


显示与所选定的数据源处于同一位置的其它数据库或表（显示的是数据库还是表，依赖于数据源的类型）。也可选择所需的另外的数据源。如果没有显示数据源的名称，可单击“数据源”按钮进行选择。


显示“编辑参数”对话框。在该对话框中，可添加或修改参数，这些参数用于从数据源中获取特定数据，以生成数据窗格中的结果集合。


键入希望定位的记录的编号，然后单击“确定”按钮。如果选中“转至”命令时，已在数据窗格中选定了一整行，Microsoft Query 将定位到此编辑框中所指定的记录，并将该记录的整个行选定。


隐藏或显示“ Office 助手”

•	如果要显示“ Office 助手”，请单击“Office 助手” [image] 按钮。

•	如果要隐藏助手，请单击助手右上角的“关闭”按钮。


移动“ Office 助手”及其气球

•	将“ Office 助手”拖到屏幕上所需的位置。

注释   如果在显示帮助主题后再显示助手，请在 Microsoft Query 窗口中的任意位置单击，或关闭帮助主题。


选择其它“ Office 助手”

1	如果当前未显示“ Office 助手”，请单击“Office 助手” [image] 按钮。

2	单击“选项”按钮。

如果看不到“选项”按钮，请单击助手，然后再单击“选项”按钮。

3	单击“助手之家”标签，然后单击“上一位”或“下一位”直至出现所需的助手。

注释

•	“美丽家园”和“智多星”助手（如果 Microsoft Office 是用软盘安装的，就没有这两个助手）要求显示器和显示卡至少支持 256 种颜色。有关如何修改显示器所支持的颜色数目的详细内容，请参阅 Windows 帮助。

•	如果能访问 Internet，就可以从 Microsoft Office 全球广域网站点上下载其它的助手。请指向“帮助”菜单内的“Microsoft on the Web”子菜单，然后单击“Microsoft Office 主页”命令。


“Office 助手”疑难解答

请选择：

Office 助手总是在捣乱。

无法关闭“ Office 助手”。

没有“ Office 助手”。

Office 助手不显示所需的帮助主题。

Office 助手的气球怎么了？


“Office 助手”总是在捣乱。

•	有些“ Office 助手”比其它的助手更为活跃。如果要选择其它的助手，请用右键单击助手，然后单击快捷菜单内的“选择助手”命令。然后在“助手之家”标签上单击“上一位”或“下一位”以查看可用的助手。“七巧板”助手是最不活跃的。最活跃和最经常发出声音的助手是“小灵通”和“查查狗”助手（如果 Microsoft Office 是用软盘安装的，就没有这两个助手）。

•	如果不希望“ Office 助手”在屏幕上到处移动，请单击助手，然后单击“选项”按钮；在“选项”标签上，清除“不方便时移动”复选框。

•	如果要关闭“ Office 助手”的声音，请单击助手，然后单击“选项”按钮；在“选项”标签上，清除“声音效果”复选框。

•	Office 助手有两种大小。如果要修改助手的大小，指向“ Office 助手”边框，使鼠标指针变为双向箭头；然后拖动边框将助手改为所需的大小。


无法关闭“ Office 助手”。

•	如果要隐藏助手，请用右键单击助手，然后单击快捷菜单内的“隐藏助手”命令。如果助手显示了消息或帮助主题，请先关闭消息或帮助主题，再隐藏助手。

•	可运行 Microsoft Office 安装程序，以从 Office 程序中删除“ Office 助手”。如果要查阅有关如何删除助手的详细内容，请单击 [image] 。


没有“ Office 助手”。

如果当前未显示“ Office 助手”，请单击“Office 助手” [image] 按钮。如果还未出现助手，那么可能在安装时未装入助手。如果要查阅有关如何安装“ Office 助手”的详细内容，请单击 [image] 。


“Office 助手”不显示所需的帮助主题。

如果当前未显示“ Office 助手”，请单击“Office 助手” [image] 按钮。

•	为了在搜索帮助主题时得到最好的结果，请在助手中键入完整的句子或问题，而不要只键入单个的单词或短语。例如，如果要查找有关如何限制显示在结果集内的数据的帮助信息，应键入“限制数据显示,使用条件”，而不要只键入“限制数据”。

•	如果不愿意键入完整的句子，或更愿意浏览帮助主题中的单词或短语的索引，请单击“帮助”菜单内的“目录和索引”命令，然后单击“索引”标签。

•	如果要判断某单词或短语是否出现在某一帮助主题中，请单击“帮助”菜单内的“目录和索引”命令，然后单击“查找”标签。如果是第一次单击“查找”标签，那么请依照随后出现的指示来设置搜索功能。

•	如果要在目录表中查找帮助主题，请单击“帮助”菜单内的“目录和索引”命令，然后单击“目录”标签。


不用“ Office 助手”而获得帮助

•	单击“帮助”菜单内的“目录和索引”命令。

提示   如果要在按下 F1 键时，直接显示帮助，而不显示“ Office 助手”，请单击“选项”按钮（如果看不到“选项”按钮，请单击助手，然后再单击“选项”按钮）。在“选项”标签上，清除“响应 F1 键”复选框。


不用“ Office 助手”而显示消息

1	如果当前未显示“ Office 助手”，请单击“Office 助手” [image] 按钮。

2	单击“选项”按钮。

如果看不到“选项”按钮，请单击助手，然后再单击“选项”按钮。

3	在“选项”标签上，清除“显示警告信息”复选框。


修改“ Office 助手”的大小

1	指向“ Office 助手”边框，使鼠标指针变为双向箭头。

2	拖动边框将助手窗口增大或缩小。

注释   如果要在显示了帮助主题之后再显示助手，单击 Microsoft Query 窗口内的任意位置，或关闭帮助主题即可。

提示   如果要使助手在连续 5 分钟未使用后自动由大变小，请单击“选项”按钮（如果看不到“选项”按钮，请单击助手，然后再单击“选项”按钮）。在“选项”标签上，选中“不方便时移动”复选框。


打开或关闭“ Office 助手”的声音

如果要听到“ Office 助手”的声音，就必须在计算机上安装声卡。

1	在“ Office 助手”中单击“选项”按钮。

如果看不到“选项”按钮，请单击助手，然后再单击“选项”按钮。

2	在“选项”标签上，选中或清除“声音效果”复选框。

注释   如果要在显示了帮助主题之后再显示助手，单击 Microsoft Query 窗口中的任意位置，或关闭帮助主题即可。


“Office 助手”的气球怎么了？

•	气球可能会出现在其它气球的前面。关闭前面的气球即可看到后面的气球。

•	显示了帮助之后，消息和提示将消失，但关闭帮助窗口，或单击 Microsoft Query 窗口的任一位置之后，消息和提示又将自动出现。

•	如果刚刚切换到另一个 Office 程序，那么在前一个 Office 程序中显示的气球就不再出现了。助手所显示的消息特定于所在的程序，切换到另一个程序后即不再有效。

•	单击了 Microsoft Query 窗口后，Office 助手的某些气球将自动关闭。这些消息都是报告性质的，不要求用户的响应。


为什么不能在 Microsoft Query 中继续工作了？

某些消息（由“ Office 助手”显示的或者非“ Office 助手”显示的）显示了之后，必须先将其关闭才能继续在 Microsoft Query 中工作。这些消息都是比较重要的，要求用户进行响应。如果要继续在 Microsoft Query 中工作，请单击所出现的消息中的选项按钮。如果 Microsoft Query 不再显示消息，但显示了帮助主题，那么就请单击 Microsoft Query 窗口的任一位置，以重新显示消息。


用于“ Office 助手”的按键

如果要	按键
选择助手气球	ALT+F6（连续按键直至气球周围出现虚线）
从“ Office 助手”所显示的帮助主题中选择某一主题	ALT+topic number（其中 1 表示第一个主题，2 表示第二个主题，以此类推）
查看更多的帮助主题	ALT+DOWN ARROW
查看上一个帮助主题	ALT+UP ARROW
关闭“ Office 助手”的消息	ESC
用“ Office 助手”获取帮助	F1
显示或隐藏向导中的“ Office 助手”	用 TAB 键选择“Office 助手”按钮；用 SPACEBAR 键显示或隐藏助手


安装或删除 Microsoft Office 的独立组件

1	关闭所有打开的应用程序。

2	单击 Windows 的“开始”按钮，指向“设置”子菜单，然后单击“控制面板”命令。

3	双击“添加/删除程序”图标。

4	单击“安装/卸载”标签上的“Microsoft Office”或所安装的 Office 程序名称，然后单击“添加/删除”按钮。

5	出现了“Microsoft Office 安装程序”对话框后，单击“添加/删除”按钮。

6	选择要添加或删除的分类选项。

如果要安装与其它 Office 应用程序共享的组件，如“ Office 助手”，请单击“Office 工具”，再单击“更改选项”按钮。

7	选中要安装的项目的复选框，或清除要删除的项目的复选框，然后单击“确定”按钮。

8	做完所需的修改后，单击“继续”按钮。

注释

•	如果应用程序原先是从网络文件服务器或共享文件夹中安装的，请运行该版本的安装程序。

•	如果要在 Windows NT 操作系统中安装或删除 Office 组件，请按照首次安装 Office 时所进行的步骤启动 Office 安装程序，然后依照随后屏幕上出现的指示进行操作。


获取有关 Microsoft Query 程序的信息

•	单击 Microsoft Query 的“帮助”菜单内的“关于 Microsoft Query”命令。

程序信息（包括版本号）将出现在“关于 Microsoft Query”对话框内。


隐藏选定的列。


重新显示选定的列。


按字母顺序列出数据窗格中所有的列。可在此列表框中选择一个或多个列进行隐藏或取消隐藏。可见的列旁边有一个复选标记，隐藏的列则没有该复选标记。如果保存查询时某一列处于隐藏状态，重新打开该查询时，该列仍旧隐藏。如果向 Microsoft Excel 或其它父程序返回数据，隐藏的列在结果集中是可见的。


选择连接线左边的表或字段。有关在查询中连接表的详细内容，请单击 [image] 。


选择运算符，该运算符决定了 Microsoft Query 对连接字段中的值所执行的比较操作的类型。有关在查询中连接表的详细内容，请单击 [image] 。


选择连接线右边的表或字段。有关在查询中连接表的详细内容，请单击 [image] 。


选择连接选项，这些选项指定了要检索的记录和应满足的条件（基于比较运算符）。此处所设置的选项决定了连接的类型是内部连接还是外部连接。有关连接类型的详细内容，请单击 [image] 。


显示定义活动查询中现有连接类型的语句。如果现有的连接数超过一个，Microsoft Query 将为每个连接显示一个独立的语句。选中与某连接相应的语句，然后单击“删除”按钮，即可删除该连接。


在“连接”对话框中定义连接后，单击此按钮可将该连接线添加到表窗格中的两个表之间。单击此按钮后，“连接”仍保持打开状态，以便必要时继续添加连接。


删除在“查询中的连接”列表框中选中的连接语句。删除连接意味着同时删除表窗格中两个表之间的连接线。


使用 Microsoft Query 中的快捷键

请选择：

用快捷键在 Microsoft Query 的窗格中移动

用快捷键选定数据和条件

用快捷键编辑数据和条件

Microsoft Query 的功能键

用于 Office 助手的按键


用快捷键在 Microsoft Query 的窗格中移动

在“表”窗格中移动

如果要	请按
在表之间移动	TAB
移到并选定表中的某一字段	UP 箭头键或DOWN 箭头键。如果要选定表中的连续字段或取消所作的选定，请按 SHIFT+UP 箭头键或SHIFT+DOWN 箭头键
在“数据”窗格或“条件”窗格的行或列之间移动

如果要	请按
移到“数据”窗格中的特定记录（行）	先按 F5 键，在“记录”编辑框内键入记录编号，然后按 ENTER 键
移到“数据”窗格中的下一列	TAB、ENTER 或 RIGHT 箭头键（从选定单元格开始）
移到当前行的前一列或上一条记录的最后一个字段	SHIFT+TAB、SHIFT+ENTER 或 LEFT 箭头键（从选定单元格开始）
移到当前行的最后一列	END
移到最后一行的最后一列	CTRL+END
移到当前行的第一列	HOME
移到第一行的第一列	CTRL+HOME
移到下一行的当前列	DOWN 箭头键
移到最后一行的当前列	CTRL+DOWN 箭头键
移到上一行的当前列	UP 箭头键
移到第一行的当前列	CTRL+UP 箭头键
在“数据”窗格或“条件”窗格的单元格内移动插入点

如果要	请按
取消选定并在选定单元格内显示插入点	F2
右移一个字符	RIGHT 箭头键
右移一个单词	CTRL+RIGHT 箭头键
左移一个字符	LEFT 箭头键
左移一个单词	CTRL+LEFT 箭头键
在单行值或多行值内移到当前行的行尾	END
移到多行值的结尾	CTRL+END
在单行值或多行值内移到当前行的行首	HOME
移到多行值的开头	CTRL+HOME
在“数据”窗格或“条件”窗格的各屏之间移动

如果要	请按
在窗格内下移一屏	PAGE DOWN
在窗格内上移一屏	PAGE UP
在窗格内右移一屏	CTRL+PAGE DOWN
在窗格内左移一屏	CTRL+PAGE UP


用快捷键选定数据和条件

选定列内的值

如果要	请按
选定当前值，或取消选定并显示插入点	F2
选定下一列内的值	TAB、ENTER 或 RIGHT 箭头键（从选定单元格开始）
选定从插入点到开头的部分	SHIFT+HOME
选定从插入点到结尾的部分	SHIFT+END
将选定部分向右扩展一个字符，或将选定部分左边一个字符取消选定	SHIFT+RIGHT 箭头键
将选定部分向右扩展一个单词，或将选定部分左边一个单词取消选定	CTRL+SHIFT+RIGHT 箭头键
将选定部分向左扩展一个字符，或将选定部分右边一个字符取消选定	SHIFT+LEFT 箭头键
将选定部分向左扩展一个单词，或将选定部分右边一个单词取消选定	CTRL+SHIFT+LEFT 箭头键
选定行

如果要	请按
选定当前行	SHIFT+SPACEBAR
在当前行处于选定状态的情况下，选定下一行	DOWN 箭头键
在当前行处于选定状态的情况下，选定上一行	UP 箭头键
将选定区域向下扩展一行，或将选定区域顶部的一行取消选定	SHIFT+DOWN 箭头键
将选定区域向上扩展一行，或将选定区域底部的一行取消选定	SHIFT+UP 箭头键
将选定区域向下扩展一屏	SHIFT+PAGE DOWN
将选定区域向上扩展一屏	SHIFT+PAGE UP
选定整个结果集	CTRL+SHIFT+SPACEBAR
选定列

如果要	请按
选定当前列	CTRL+SPACEBAR
在当前列处于选定状态的情况下，选定右边一列	RIGHT 箭头键
在当前列处于选定状态的情况下，选定左边一列	LEFT 箭头键
将选定区域向左扩展一列，或将选定区域右边的一列取消选定	SHIFT+LEFT 箭头键
将选定区域向右扩展一列，或将选定区域左边的一列取消选定	SHIFT+RIGHT 箭头键
将选定区域向右扩展一屏	CTRL+SHIFT+PAGE DOWN
将选定区域向左扩展一屏	CTRL+SHIFT+PAGE UP


用快捷键编辑数据和条件

复制、剪切、粘贴或删除

如果要	请按
将当前选定区域复制到剪贴板上	CTRL+C
将剪贴板上的内容粘贴到插入点后	CTRL+V
剪切当前选定区域的内容，并将其复制到剪贴板上	CTRL+X
删除当前选定区域的内容，或删除插入点左边的一个字符	BACKSPACE
删除当前选定区域的内容，或删除插入点右边的一个字符	DELETE
在“数据”窗格中放大字段以便进行编辑

如果要	请按
打开“缩放字段”对话框，在较大的输入区内方便地输入数据	SHIFT+F2


Microsoft Query 的功能键

如果要	请按
切换到帮助窗口	F1
获取当前选定对象的上下文相关帮助	SHIFT+F1，然后按 ENTER 键
选定当前值或取消当前的选定	F2
用“保存”命令保存查询	ALT+SHIFT+F2 或SHIFT+F12
用“另存为”命令保存查询	ALT+F2 或 F12
打开“缩放字段”对话框，在较大的输入区内方便地输入数据	SHIFT+F2
关闭活动查询	CTRL+F4
退出 Microsoft Query	ALT+F4
移到“数据”窗格中的特定记录（行）	先按 F5 键，在“记录”编辑框内键入记录编号，然后按 ENTER 键
移到查询窗口的下一窗格	F6
移到查询窗口的上一窗格	SHIFT+F6
切换到所打开的下一个查询窗口	CTRL+F6
切换到所打开的上一个查询窗口	CTRL+SHIFT+F6
运行当前查询	F9


如果同时打开的查询窗口超过九个，Microsoft Query 将在“窗口”菜单中显示“其他窗口”命令。单击所需的窗口，然后单击“确定”即可。


“关闭”命令（“文件”菜单）

关闭活动查询。


“另存为”命令（“文件”菜单）

显示“另存为”对话框，该对话框可用于保存新查询的设计，或以其它名称保存现有查询的设计，或将查询的结果集保存为表。在“另存为”对话框内选中“数据库查询”可保存查询。以".dqy"作为扩展名的数据库查询，可通过单击 Microsoft Excel 中“数据”菜单内的“获取外部数据”命令，并选择“运行数据库查询”来运行。


“表定义”命令（“文件”菜单）

显示选定的表的现有表定义。可用此命令创建新表，或在表中的一个或多个字段上创建索引。当用现有的表定义创建新表时，Microsoft Query 将不把现有表内的数据添加到新表中。新表将是空白的表。


“执行 SQL”命令（“文件”菜单）

运行新建的或现有的 SQL 语句或过程。可用“执行 SQL”命令运行由“SQL”对话框创建或修改的查询（单击“视图”菜单内的“SQL”命令，即出现“SQL”对话框）。如果要修改或替换 SQL 语句，应使用 Microsoft Query 所使用的或相应的数据源所支持的 SQL 语法。有关的细节请参阅 SQL 文档或咨询数据库管理员。


退出/返回数据

退出 Microsoft Query 并关闭所有打开的查询窗口。如果 Microsoft Query 是从其它应用程序中启动的，“退出”命令就被替换为将数据从 Microsoft Query 返回到原应用程序中的命令。该命令的名称依启动 Microsoft Query 的应用程序的不同而不同。如果对查询的设计进行了修改，而又未保存该查询，那么单击此命令时，Microsoft Query 将提示保存所作的修改。此时如果单击了“是”按钮，并且该查询还未命名，就将出现“另存为”对话框。


“撤消/恢复”命令（“编辑”菜单）

撤消上一个命令，或删除刚刚键入的数据项。如果单击了“撤消”命令，那么“撤消”命令将变为“恢复”命令，该命令用于撤消“撤消”命令所作的操作。


“剪切”命令（“编辑”菜单）

删除所选定的数据。当在“条件”窗格和“数据”窗格之内或之间的各单元格之间移动数据时，使用“剪切”命令可节省时间并避免拼写错误。


“复制”命令（“编辑”菜单）

复制所选定的数据。当在“条件”窗格和“数据”窗格之内或之间的各单元格之间复制数据时，使用“复制”命令可节省时间并避免拼写错误。还可用“复制”命令将数据复制到其它应用程序中。如果要向其它应用程序复制数据，并且希望在复制数据时包括行号和列标，那么请使用“编辑”菜单内的“选择性复制”命令，而不要用“复制”命令。


“选择性复制”命令（“编辑”菜单）

将结果集中的数据连同行号和列标一起复制到其它应用程序中。单击此命令后，切换到要粘贴数据的应用程序中。此时，既可以将数据只当作数值来粘贴，也可以作为链接的数据来粘贴（链接的数据在源数据改变时，可同步更新）。选择“粘贴”命令，就只粘贴数值，而选择“粘贴链接”命令，则源数据改变时，所粘贴的数据可同步更新。某些应用程序可能使用其它的“粘贴”命令来粘贴可更新的数据。请检查相应的应用程序中的“粘贴”命令，以决定应使用哪一个命令。


“粘贴”命令（“编辑”菜单）

将剪切或复制好的数值插入到“条件”窗格或“数据”窗格中的单元格内。


“删除”命令（“编辑”菜单）

删除选定的项目。可删除“表”窗格中所列出的字段，或在“条件”窗格中删除包含条件的列、行或单元格，或删除“数据”窗格中的字段或记录。


“缩放字段”命令（“视图”菜单）

显示“缩放字段”对话框。当需要较大的空间来编辑或输入单元格的内容时，可用“缩放字段”命令。单击“确定”按钮可在“数据”窗格内查看编辑好的数据。可能需要选中“记录”菜单内的“允许编辑辑”选项才能编辑字段；不过，如果查询中包含了多个表，就不能编辑记录。并且，这一选项也不是对所有的数据源都有效。有关的细节请参阅数据库文档或咨询数据库管理员。


“查询属性”命令（“视图”菜单）

设置查询的“不选重复的记录”属性和“归组记录”属性。


“字体”命令（“格式”菜单）

在“字体”对话框内设置所需的选项，以修改“数据”窗格内的字段名称和数据（结果集）的外观。字体设置将影响整个结果集，而不只是影响单独的单元格、行或列。如果要向 Microsoft Excel 或其它父应用程序返回数据，那么当结果集返回到父应用程序中时，此处所设置的格式选项将不会起作用。


“行高”命令（“格式”菜单）

修改“数据”窗格中所有的行的高度。行高的改动随查询一起保存。如果指定的是标准（默认）行高，Microsoft Query 将在字体发生改变时自动调整行高。如果指定的是自定义的行高，而又改变了字体，就必须手工调整行高以适应字体大小。如果要向 Microsoft Excel 或其它父应用程序返回数据，那么当结果集返回到父应用程序中时，此处所设置的格式选项将不会起作用。


“列宽”命令（“格式”菜单）

修改“数据”窗格中选定列的宽度。修改字体大小将会改变列内所能显示的字符数目，但并不会改变列宽。修改列宽不会影响在表定义中所指定的字段长度。列宽的改动随查询一起保存。如果要向 Microsoft Excel 或其它父应用程序返回数据，那么当结果集返回到父应用程序中时，此处所设置的格式选项将不会起作用。


“隐藏列”命令（“格式”菜单）

在“数据”窗格内暂时隐藏选定的列（字段），但并不修改查询的结果集。可用处于隐藏状态的列内的数值来设置条件。如果保存查询时某一列是隐藏的，那么再次打开该查询时，该列仍将保持隐藏状态。单击“格式”菜单内的“显示列”命令，可查看“数据”窗格内可用的列的清单。在“显示列”对话框内，处于隐藏状态的列旁边没有复选标记。如果要向 Microsoft Excel 或其它父应用程序返回数据，那么当结果集返回到父应用程序中时，此处所设置的格式选项将不会起作用。


“显示列”命令（“格式”菜单）

以字母顺序显示“数据”窗格内可用的列（字段）的清单。可见的列旁边有一个复选标记；处于隐藏状态的列旁边没有复选标记。如果保存查询时某一列是隐藏的，那么再次打开该查询时，该列仍将保持隐藏状态。如果要向 Microsoft Excel 或其它父应用程序返回数据，那么当结果集返回到父应用程序中时，此处所设置的格式选项将不会起作用。


“删除表”命令（“表”菜单）

删除“表”窗格内选定的表。删除表时，并不会删除下层表中的数据。


“连接”命令（“表”菜单）

在“表”窗格内创建、删除或重新安排表之间的连接。如果某一张表中某一字段的名称和数据类型与另一张表的主关键字字段的名称和数据类型相同，Microsoft Query 将自动连接这两张表。如果在查询中添加或删除了连接，那么所作的添加或删除只会影响该查询。如果新建的查询中又使用了相同的表，Microsoft Query 将在新建的查询内创建连接。如果要查阅有关在查询中使用连接的详细内容，请单击 [image] 。


“添加条件”命令（“条件”菜单）

定义结果集中的记录所必须满足的条件。例如，可以指定条件以便只选择包含特定值的记录（如日本的供应商的记录），或选择处于某一范围内的记录（如从九五年一月一日到九六年一月一日期间新雇佣的雇员的记录）。


“删除条件”命令（“条件”菜单）

删除在查询中所指定的所有条件。


“添加列”命令（“记录”菜单）

向“数据”窗格内添加列（字段）。如果“数据”窗格内已经有了结果集，Microsoft Query 将把新添加的列放在结果集的尾部。如果在现有的结果集中选定了某一列，那么本命令将变成“插入列”命令。如果在“自动查询”选项处于关闭状态时添加了列，那么就只在“数据”窗格内显示列标，此时必须单击“Query Now”才能看到结果集。


“删除列”命令（“记录”菜单）

在“数据”窗格内删除选定的列。删除列时，并不是从下层表中删除数据，而只是从查询中删除了该列及其数据。如果希望某一列及其数据保留在查询内，而又不想让它显示在结果集中，可用“格式”菜单内的“隐藏列”命令。不能删除“数据”窗格内的空白列。


“编辑列”命令（“记录”菜单）

修改选定的列。可用本命令修改列标，及指定要在特定列上所计算的汇总类型。在 Microsoft Query 中修改结果集的列标，并不影响数据源中的字段名称。如果要向 Microsoft Excel 或其它父应用程序返回数据，所返回的结果集内将使用数据源中的原有字段名称。


“排序”命令（“记录”菜单）

按选定列的内容对查询中的记录进行排序。可按升序（A-Z , 0-9）或降序（Z-A , 9-0）对记录进行排序。


“定位”命令（“记录”菜单）

在选定字段内，移到指定的值所在的记录。如果在“数据”窗格内选定了整行后，又使用了“定位”命令，Microsoft Query 将移到指定的记录，并选定该记录所在的整个行。


“允许编辑”命令（“记录”菜单）

控制是否可对查询的结果集内的数据，从而对下层表中的数据进行修改。选中了此命令后，即可对数据进行编辑。如果再次单击此命令，就将清除复选标记，从而就不能再编辑数据了。这一选项并不是对所有的数据源都有效。有关的细节请参阅数据库文档或咨询数据库管理员。如果要查阅有关修改结果集内的数据的详细内容，请单击 [image] 。


“平铺”命令（“窗口”菜单）

将 Microsoft Query 中的查询窗口一个挨一个地排列，使得所有的窗口都可见，且都不重叠。


“层叠”命令（“窗口”菜单）

重叠 Microsoft Query 中的各查询窗口，使得每个窗口的标题栏都可见。


Office 助手

Office 助手提供帮助主题和提示，以协助用户完成任务。


“目录和索引”命令（“帮助”菜单）

显示此 Microsoft 应用程序的联机帮助内容。


“关于 Microsoft Query”命令（“帮助”菜单）

显示此 Microsoft 应用程序的版本号，版权声明、法律声明及许可声明，用户及单位名称，以及软件产品序列号。


“取消”命令（“文件”菜单）

退出 Microsoft Query 并关闭所有打开的查询窗口。如果 Microsoft Query 是从其它应用程序中启动的，单击“取消”命令将切换到该应用程序中，但不返回数据。


“选项”命令（“编辑”菜单）

在“选项”对话框内设置所需的数据源连接选项。


无法打开文件<名称>

Microsoft Query 无法打开或读取要打开的文件，或无法保存文件。可能出现了磁盘错误，或该文件已损坏。


文本太长；粘贴取消

剪贴板中要粘贴的文本太长，无法填入“数据”窗格或“条件”窗格中选定的字段内。所能填入该字段的最大字符数取决于创建表时所指定的字段长度。


无法粘贴

剪贴板没有响应。其它程序可能正在使用它，或者 Microsoft Query 无法识别剪贴板上的数据格式，或者没有足够的内存来粘贴这些数据。

关闭 Microsoft Query 中不用的窗口，或关闭其它程序。如果再次出现本错误，请重新启动 Microsoft Windows ，然后再对数据进行复制和粘贴操作。


运行 Microsoft Query 所需显示驱动程序的分辨率最小为 400 ( 350 像素

显示驱动程序的分辨率不够，无法运行 Microsoft Query。请用 Microsoft Windows 安装程序替换该显示驱动程序。替换显示驱动程序之前，可能还需要将计算机的显示卡升级为支持更高分辨率的型号。


不支持剪贴板内的数据格式

Microsoft Query 无法识别剪贴板上的数据格式。


无法打开剪贴板

剪贴板没有响应，可能有其它程序正在使用它。请关闭该程序，然后再试一次。


数据格式错误；无法粘贴

由于没有足够的内存，Microsoft Query 无法粘贴剪贴板上的数据。

关闭 Microsoft Query 中不用的窗口，或关闭其它程序。如果再次出现本错误，请重新启动 Microsoft Windows 后再对数据进行复制和粘贴操作。


系统资源不足，无法更新显示

由于没有足够的内存，Microsoft Query 无法完成这一操作。

关闭 Microsoft Query 中不用的窗口，或关闭其它程序。如果再次出现本错误，请重新启动 Microsoft Windows 后再试一次本操作。


<名称>的版本不兼容；Microsoft Query 无法运行

“Ddeml.dll”文件过旧，或缺少该文件。请重新安装 Microsoft Query 或 Microsoft Windows。


无法退出 Microsoft Query

Microsoft Query 正在通过动态数据交换（DDE）与其它程序进行通信。请等到 DDE 操作结束后再退出 Microsoft Query。


无法启动 Microsoft Query。请再试一次

产生了系统错误，或者内存不足，无法启动 Microsoft Query。

再次启动 Microsoft Query 或关闭其它程序。如果再次出现本错误，请重新启动 Microsoft Windows 后再试一次本操作。


该值必须是数字

某一选项设置要求用数字值，但所输入的值不是数字。请输入数字。


数字太大

请输入一个较小的数。


无法识别计量单位

Microsoft Query 无法识别为此选项所输入的字符。输入数字，但不要输入表示计量单位的字符，如 "（双引号）、“in”（英寸）或“cm”（厘米）。


是否要将所作的修改保存到查询<名称>中

自上次保存后，又对当前查询的设计或格式进行了改动。

•	如果要在关闭查询之前保存所作的修改，请单击“是”按钮。

•	如果要忽略所作的修改而直接关闭查询，请单击“否”按钮。

•	如果要使查询继续保持打开状态，并且不保存所作的修改，请单击“取消”按钮。


本操作执行后将无法撤消。是否要继续

对这一操作，“撤消”命令无效，原因是本操作太大，或没有足够的内存。

•	如果要继续本操作，请单击“确定”按钮。

•	如果不想继续本操作，请单击“取消”按钮。


无法打开 DDE 通道；Microsoft Query 无法找到指定的程序和主题

Microsoft Query 无法定位指定的程序和主题（即动态数据交换 [DDE] 对话的“话题”）。请确认其它程序（目标程序）是否正在运行，相应的主题是否处于打开状态，以及定义 DDE 对话时程序名和主题名的拼写是否正确。


DDE 对话已关闭或已修改

其它程序意外地关闭或修改了动态数据交换（DDE）对话，可能是因为执行了 DDETerminate 或 DDETerminateAll 语句。

请关闭当前的对话，然后与相应的程序建立新的对话。


消息队列已满；DDE 消息丢失

Microsoft Query 跟不上动态数据交换（DDE）操作的提交速度。

请关闭一些 DDE 对话，然后再试一次本操作。


其它应用程序处于忙碌状态

动态数据交换（DDE）对话中的另一个应用程序处于忙碌状态，无法执行 DDE 操作。请等到该应用程序空闲时再进行操作。


其它应用程序已退出

动态数据交换（DDE）对话中的另一个应用程序意外退出。重新初始化 DDE 对话之前，请再次启动该应用程序。


其它应用程序不执行所提交的 DDE 操作

其它应用程序无法执行所提交的动态数据交换（DDE）操作。

•	其它程序可能无法识别所提供的数据和命令。请参阅相应程序的文档，以了解其所能识别的数据和命令。

•	根据对话所定义的主题，其它程序可能无法识别 Item 参数。请参阅相应程序的文档，以了解其所能识别的请求项。


DDE 交换失败。请检查 DDEML.DLL 的版本是否正确

所安装的 Microsoft Query 不完整或已损坏。请运行安装程序以重新安装 Microsoft Query。


对 DDE 应答等待超时

动态数据交换（DDE）对话中的另一个应用程序在“DDE 超时设定”选项所指定的时间内没有应答。

•	其它程序可能在等待用户的应答。请切换到该程序中，然后关闭对话框或对其显示的消息作出应答。

•	其它程序可能过于忙碌而无法对 DDE 消息作出反应。

注释   不能修改在“DDE 超时设定”选项中指定的时间。


“Between”运算符缺少“And”

使用“Between...And”运算符时，必须输入保留字“And”。请使用下述语法：

表达式 Between 第一个值 And 第二个值


表达式过于复杂

表达式过于复杂，无法计算。请简化该表达式。


有多余的右括号“)”

表达式中包含多余的右括号。请删除那些没有相应左括号的右括号。


“.”、“!”或“( )”的用法不对

表达式中有无效的“.”（句点）或“!”运算符，或无效的括号。例如，可能输入了无效的标识符，或在常量 Null 之后键入了括号。请正确地输入表达式。


缺少“)”、“]”或“|”

表达式中缺少右圆括号、右方括号或垂直线。请正确地输入表达式。


计算时内存用尽

剩余内存不足，无法执行计算。

关闭 Microsoft Query 中的无用窗口，或关闭其它程序。如果再次出现本错误，请重新启动 Microsoft Windows 后再进行计算。


日期中有语法错误

表达式中有无效的日期值。请正确地输入表达式。


数字中有语法错误

表达式中有无效的数字。请正确地输入表达式。


字符串中有语法错误

表达式中有无效的字符串。例如，可能超出了字符串的最大长度。请正确地输入表达式。


语法错误

表达式有语法错误。例如，可能没有输入操作数或运算符，可能输入了无效的字符或逗号，或者输入文字时没有用引号（" 或 '）将文字引起来。请正确地输入表达式。


无法添加表<名称>

无法添加指定的表。请确认一下是否满足下述条件：

•	数据库中存在指定的表。

•	表的名称拼写无误。请检查是否缺少下划线字符（_）或其它标点符号。

•	指定的表包含有效的字段（列）。


GROUP BY 从句中存在语法错误

SQL 语句中存在无效的 GROUP BY 从句。可能拼错或缺了某一保留字，或者标点符号不正确。


ORDER BY 从句中存在语法错误

SQL 语句中存在无效的 ORDER BY 从句。可能拼错或缺了某一保留字，或者标点符号不正确。


HAVING 从句中存在语法错误

SQL 语句中存在无效的 HAVING 从句。可能错拼或缺少了某一保留字，或者标点符号不正确。


JOIN 表达式中存在语法错误

SQL 语句中的 ON 从句后面没有跟有效的表达式。该表达式应为下述格式：

{oj C:\QT\orders orders LEFT OUTER JOIN C:\QT\orddtail orddtail ON orders.ORDER_ID = orddtail.ORDER_ID}


列表达式<表达式>错误

在“Select”清单中所指定的表达式不正确。该表达式应为下述格式：

SELECT employee.EMPLOY_ID, employee.HIRE_DATE
FROM C:\QT\employee employee


“GROUP”后缺少“BY”

SQL 语句中包含了 GROUP 从句，而没有包含应有的 GROUP BY 从句。可能错拼或缺少了“BY”。


“ORDER”后缺少“BY”

SQL 语句中包含了 ORDER 从句，而没有包含应有的 ORDER BY 从句。可能错拼或缺少了“BY”。


“WHERE”后缺少表达式

SQL 语句中的 WHERE 从句后面没有跟查找条件。


“HAVING”后缺少表达式

SQL 语句中的 HAVING 从句后面没有跟查找条件。


“OUTER”后缺少“JOIN”

SQL 语句中包含了 LEFT OUTER 从句或 RIGHT OUTER 从句，而没有包含应有的 LEFT OUTER JOIN 从句或 RIGHT OUTER JOIN 从句。可能错拼或缺少了“JOIN”。


右连接的表后面缺少“ON”

SQL 语句中包含了 LEFT OUTER JOIN 从句或 RIGHT OUTER JOIN 从句及其表达式，但该表达式后面没有跟 ON 从句及其表达式。可能错拼或缺少了“ON”。


“FROM”后缺少表名

SQL 语句中的 FROM 从句后面没有跟表的名称。


GROUP BY 从句的列清单后面不应有<文字>

GROUP BY 从句的列清单后面所跟的表达式或从句无效。


HAVING 从句后不应有<文字>

SQL 语句的 HAVING 从句后面所跟的表达式或从句无效。


ORDER BY 从句的列清单后面不应有<文字>

SQL 语句的 ORDER BY 从句后面所跟的表达式或从句无效。


SELECT 语句的选择清单后面不应有<文字>

SELECT 语句的选择清单后面所跟的表达式或从句无效。


表<名称>后缺少连接运算符

LEFT OUTER JOIN 从句或 RIGHT OUTER JOIN 从句的表达式中两个表名之间缺少“=”运算符。外部连接必须是相等连接（即必须使用“=”运算符）。


左外部连接和右外部连接必须是相等连接

LEFT OUTER JOIN 从句或 RIGHT OUTER JOIN 从句的表达式中，两个表名之间或者缺少了“=”运算符，或者使用了其它的运算符。外部连接必须是相等连接（即必须使用“=”运算符）。


“LEFT”或“RIGHT”后缺少“OUTER”

SQL 语句中包含了 LEFT 或 RIGHT 外部连接从句，但其中缺少了关键字 OUTER。SQL 语句中的外部连接从句必须是 LEFT OUTER JOIN 从句或 RIGHT OUTER JOIN 从句。


WHERE 从句后不应有<文字>

SQL 语句的 WHERE 从句后面所跟的表达式或从句无效。


表<名称>后缺少 LEFT 或 RIGHT

SQL 语句中包含了 OUTER JOIN 从句，但该从句前面缺少了关键字 LEFT 或 RIGHT。SQL 语句中的外部连接从句必须是 LEFT OUTER JOIN 或从句 RIGHT OUTER JOIN 从句。


“ORDER BY”后缺少表达式

SQL 语句中的 ORDER BY 从句后面没有跟表达式。


“GROUP BY”后缺少表达式

SQL 语句中的 GROUP BY 从句后面没有跟表达式。


无法显示条件

所指定的条件无效。


如果不指定字段，就不能设置条件

在指定某一字段的条件之前，必须先将该字段添加到“条件”窗格内。


不能对表进行合计

在“字段”编辑框内键入了星号（*），而未指定要进行汇总计算的某一特定字段。应删去“*”，然后输入字段的名称。


表达式太长

表达式太长，使 Microsoft Query 无法对其进行计算。可将该表达式缩短一些，或将其分解为两个表达式。


记录不存在

所指定的记录号不存在。该记录号可能太大或太小。请确认一下“数据”窗格内是否有记录，然后检查所输入的记录号是否正确。


由于内存不足或未正确地安装 Windows 或 Microsoft Query，故无法显示帮助

如果要释放内存，请关闭其它窗口或程序。必要时请重新安装 Microsoft Windows 或 Microsoft Query。


将更新<数字>条记录

“数据”窗格内包含与要修改记录相匹配的其它记录。结果，Microsoft Query 将自动用相同的改动来更新匹配的记录。

•	如果要避免在“数据”窗格内出现重复记录，请在修改数据之前将所有字段添加到“数据”窗格内。

•	如果要更新所有匹配的记录，请单击“确定”按钮。

•	如果不想更新任何记录，请单击“取消”按钮。


删除<数字>条记录

用户指示要删除指定数目的记录。

注释   如果此处出现的记录数目大于所指定记录数目，就表示 Microsoft Query 依据“数据”窗格中的字段找到了重复的记录。如果要避免出现重复记录，请在删除记录之前将所有的字段添加到“数据”窗格内。

•	如果要删除记录，请单击“确定”按钮。

•	如果不想删除记录，请单击“取消”按钮。


必须有一张表的两个实例才能创建自连接

在“表”窗格内有两张不同的表，而又在“连接”对话框内的“左”下拉列表框和“右”下拉列表框内指定了相同的表名，以定义自连接。

•	如果要创建自连接，在“表”窗格内就必须有同一张表的两个实例。

•	如果要连接两张不同的表，就必须在连接的左右两边指定不同的表。


不能将“*”指定为字段。如果要添加所有的字段，请将“*”拖到网格内

在“条件”窗格的“条件字段”单元格内键入了星号（*）。如果要为查询中的所有字段指定条件，请使用下述方法之一，而不要键入星号。

•	将表内的“*”拖到“条件”窗格中。

•	双击表内的星号。

•	逐个地添加所有的字段。


要连接的列<名称>和列<名称>属于不同的数据类型。是否仍要连接

试图连接不同数据类型的列（字段）。例如，可能试图将包含日期的列与包含文字的列进行连接。

•	如果不想进行连接，请单击“取消”按钮。

•	如果要进行连接，请单击“确定”按钮。

注释   这一类型的连接可能不会产生预期的结果。请检查 Microsoft Query 是否在结果集内显示了所需的数据。


函数<名称>不能用于<列名称>

所选定的函数不能对此字段内的数据类型进行计算。例如，如果“SHIP_CNTRY”字段内所包含的是文字数据，就不能计算该字段的平均值。


无法访问表<名称>

无法找到指定的表，或其它用户、其它查询锁定了指定的表，或指定的表内没有包含有效数据。


更新失败

Microsoft Query 无法更新“添加表”对话框内的表清单，原因是相应的数据源没有应答。请确认一下是否仍连接在该数据源上。


成功地执行了 SQL 语句：共有<数字>行受到影响

Microsoft Query 运行了指定的 SQL 语句，受影响的行（记录）数如本消息所述。


保存时产生了输入/输出错误

Microsoft Query 无法将查询保存到磁盘上。可能产生了磁盘错误。


载入时产生了输入/输出错误

Microsoft Query 无法打开或读取选定的文件。可能产生了磁盘错误，或选定的文件已损坏。


无法创建新窗口

Microsoft Query 无法显示选定的文件，可能是因为内存不足。

请关闭 Microsoft Query 中的其它窗口或关闭其它应用程序后再试一下。如果再次出现本错误，就重新启动 Microsoft Windows 试试。


驱动程序并不支持所有的函数

所输入的表达式中包含了数据源所不支持的函数。如果要了解数据源究竟支持哪些函数，请参阅数据源所用的驱动程序附带的文档，或者与驱动程序的供应商联系。


选定的值太多

内存不足，无法将所有指定的值都作为字段的条件。请减少所指定值的数目。


不能打开同一文件的多个副本

不能使同一查询文件的两个副本同时处于打开状态。


由于查询状态无效而无法继续保存

查询的设计无效。例如，可能错误地指定了条件。如果“自动查询”命令处于关闭状态，请单击“记录”菜单内的“立即查询”命令来运行查询，以找出错误原因。


无法打开文件

Microsoft Query 无法打开或读取在“执行 SQL”对话框中所指定的 Microsoft Query 文件。可能是因为该文件不是文本格式，或产生了磁盘错误，或该文件已损坏。


无法创建文件

Microsoft Query 无法创建指定的查询文件。可能产生了磁盘错误，或该文件已损坏。


无法将列<名称>保存到数据源中

试图将结果集保存为表，但要存入的数据源或者是不支持指定列的数据类型，或者是无法将其转换为类似的数据类型。请试用其它支持该数据类型的数据源来保存结果集。


无法打开文件

Microsoft Query 无法打开指定的查询文件。可能产生了磁盘错误，或该文件已损坏。


无法执行查询。是否要查看 SQL 语句

Microsoft Query 无法运行 SQL 语句，原因是 SQL 语句所引用的某一对象当前处于无效状态。例如，该语句可能引用了一张已经不存在的表。如果要查看 SQL 语句并进行必要的修改，请单击“确定”按钮。


一般 ODBC 错误

Microsoft ODBC 或数据源所返回的错误没有详细的说明信息。请确认一下数据库是否正在运行并处于有效状态，然后再试一次。


驱动程序错误

本错误是由驱动程序所返回的。有关的详细内容，请参阅当前驱动程序的文档。


文件名无效。

文件名必须遵循相应的数据源所要求的标准命名约定。有关内容请参阅数据源的文档。


无法将表达式<名称>添加到排序列表中。

所用的数据源不允许对显示表达式结果的字段进行排序。


<值>超出了此列的取值范围。

该值超出了此列（字段）所允许的最大数字。请输入一个较小的值。


<值>的小数点后面位数太多。

小数点后面的位数超过了字段内所允许的位数。请减少小数点后面的位数。


<值>不是有效的数字。

在字段中所输入的数据的类型不对。例如，可能在只允许输入数字的字段内输入了文字。


<值>不是布尔值。

在只允许输入布尔值的字段内输入了非布尔值。例如，在只接受“0”或“1”的值的字段内输入了日期。


<值>不是有效的日期。

在字段中所输入的数据的类型不对。例如，可能在只允许输入日期的字段内输入了文字。


不能编辑包含多张表的查询。

不能编辑包含多张表的查询中的数据。

•	如果要编辑某一张表中的数据，就只将该表添加到查询中，然后单击“记录”菜单内的“允许编辑”命令。

•	如果要编辑当前查询中的数据，那么就删除查询中多余的表，只保留要编辑的数据所在的表。然后单击“记录”菜单内的“允许编辑”命令。

注释   当删除查询中的表时，下层表中的数据并未被删除。所作的删除操作只是从当前查询中去掉了表及其数据。


无法删除数据源。

Microsoft Query 无法删除选定的数据源。必须中断与该数据源的连接才能删除之。


无法添加数据源。

Microsoft Query 无法添加选定的数据源，原因是与该数据源的连接方面的问题。


无法删除；某些查询正在使用该数据源。

有一个或多个查询正在使用要删除的数据源。必须关闭使用该数据源的查询才能进行删除。


表<名称>已存在；是否要替换该表？

以所输入的内容为名称的表已存在。

•	如果要用新建的表替换已有的表，请单击“是”按钮。

•	如果要保留已有的表，请单击“否”按钮，然后为新建的表输入另外一个名称。


名称<名称>中有错。

表名和字段名必须遵循相应的数据源所要求的标准命名约定。有关内容请参阅数据源的文档。


<数据类型名称>类型的最大长度为<数字>。

在“长度”编辑框中所指定的长度超过了字段的数据类型所允许的最大长度。


小数点后面位数必须小于或等于总长度。

在“小数位数”编辑框中所指定的数字大于在“长度”编辑框中所指定的长度。应将“小数位数”编辑框中的值改为小于或等于“长度”编辑框中所指定长度的数。


长度<数字>必须是数字。

在“长度”编辑框中指定了非数字的值。请将该值改为数字。


成功地创建了表<名称>。

Microsoft Query 在选定的数据源中创建了所定义的表。


是否删除表<名称>？

您指示要删除此表。如果将此表删除，那么表中的所有数据都将被删除。

注意   对表的删除操作不能撤消。

•	如果要删除该表及其中所存储的数据，请单击“是”按钮。

•	如果不想删除该表，请单击“否”按钮。


成功地删除了表<名称>。

Microsoft Query 删除了表及其中所存储的所有数据。不能撤消这一删除操作。


SQL 执行失败。

Microsoft Query 无法运行指定的 SQL 语句。请确认正确地输入了语句。


无法取回过程清单。

Microsoft Query 无法显示数据源中的过程清单，原因是数据源没有应答。可能已中断了与数据源的连接。


无法读取此文件。

Microsoft Query 无法读取指定的文件。可能该文件的格式不是 Microsoft Query 或 Q+E 的格式，或者出现了磁盘错误，或者该文件已损坏。


请先选定数据源。

试图在选定数据源之前运行 SQL 语句。请单击“执行 SQL”对话框内的“数据源”按钮，然后选择某一数据源。


未找到任何过程。

此数据源中没有任何过程。有关创建过程的内容，请参阅相应数据源的文档。


不能保存到已打开的文件中。

要存入的文件已打开。在存入该文件之前应先关闭之。


表<名称>已存在于查询中；是否要再次添加该表？

试图向查询中添加一张已存在于“表”窗格中的表。

•	如果要添加该表，以创建自连接（self-join），那么请单击“确定”按钮。

•	如果不想添加该表，请单击“取消”按钮。


无法编辑归组后的查询。

如果查询中包含汇总，或“查询属性”对话框中的“归组记录”复选框处于选中状态，就不能编辑查询中的数据。必须将查询中的汇总去掉，或清除“归组记录”属性，才能编辑查询中的数据。


无法检索数据。

Microsoft Query 无法显示由指定的条件所选择的数据。可能是因为内存不足，或已经中断了与数据源的连接。

如果还未中断与数据源的连接，那么就关闭 Microsoft Query 中的其它窗口或关闭其它应用程序后再试一下。如果再次出现本错误，就重新启动 Microsoft Windows 试试。


无法创建索引。

此表的数据源不支持索引。


所指定的长度必须大于 0。

在“表的定义”对话框内的“长度”编辑框中所指定的长度必须大于 0（零）。


有些查询正在使用<连接名>，是否仍要关闭？

有一个或多个查询正在使用要删除的数据源。

•	如果要删除数据源并关闭正在使用该数据源的查询，就单击“确定”按钮。

•	如果要保留数据源，并使正在使用该数据源的查询继续保持打开状态，就单击“取消”按钮。


存在远程链接，是否仍要关闭？

查询中的数据与其它应用程序（如 Microsoft Excel 或 Microsoft Word）之间存在链接。

•	如果要关闭查询以及链接，就单击“确定”按钮。关闭查询之后就不能再恢复链接了。

•	如果要使查询保持打开状态，并保留链接，就单击“取消”按钮。


宽度必须是从 0 到 <数字>之间的数。

请在这两个数之间指定列宽，或在“列宽”对话框内选择“标准列宽”选项。


高度必须是从 1 到 <数字>之间的数。

请在这两个数之间指定行高，或在“行高”对话框内选择“标准行高”选项。


是否要保存剪贴板上的大量数据<名称>？

当前在剪贴板上有大量的数据。

•	如果要保存剪贴板上的数据，然后关闭查询或退出 Microsoft Query，就单击“是”按钮。

•	如果要删除剪贴板上的数据，然后关闭查询或退出 Microsoft Query，就单击“否”按钮。

•	如果要继续在 Microsoft Query 中工作，并使数据继续保留在剪贴板上，就单击“取消”按钮。


数据更新失败。是否仍要继续编辑记录？

由于下层表或数据源是只读的，或下层表已损坏，或磁盘空间不够等原因，Microsoft Query 无法更新编辑过的数据。


无法编辑计算的列。

如果列内包含汇总计算，或列内显示了自定义表达式的结果，就不能编辑该列中的数据。


如果存在外部连接，查询中就只能包含两张表。是否要删除外部连接以添加表？

在“表”窗格中已经有两张表，且这两张表之间已存在外部连接。如果要在“表”窗格中使用三张或更多的表，就必须删除外部连接，或将其改为内部连接。


查询中只能有一个外部连接。

每个查询中只能包含一个外部连接。


如果查询中包含三张以上的表，就不能再有外部连接。

使用外部连接时，在“表”窗格中只能包含两张表。必须从“表”窗格中删除多余的表，才能创建外部连接。


SQL 查询不能以图形方式表示，是否仍要继续？

Microsoft Query 无法显示此查询的“表”窗格。并且如果此查询返回了记录，也不能在查询窗口中编辑这些记录或编辑查询的设计。不过，可单击“编辑”菜单内的“SQL”命令，通过直接编辑 SQL 语句来编辑查询的设计。


只能为运算符<运算符>选择一个值。

当用此运算符定义条件时，只能使用一个值。然后 Microsoft Query 就只选择那些相应字段中包含该值的记录。例如，如果在“运算符”框内选择了“始于”，那么 Microsoft Query 就将在条件所应用的字段中查找以指定的值开头的记录。只有那些符合条件的记录将包含在结果集内。


必须为运算符<运算符>选择两个值。

当用此运算符定义条件时，必须使用两个值。例如，如果在“运算符”框内选择了“介于”，那么 Microsoft Query 就将在条件所应用的字段中查找落在指定的两个值之间的记录。只有那些符合条件的记录将包含在结果集内。


在列<名称>上不能指定条件。

在这种数据类型的列（字段）上不能指定条件。


在列<名称>上不能使用运算符<运算符>。

数据源不允许在该字段上使用指定的运算符，因为该字段的数据类型不能使用该运算符。请参阅数据源的文档，以了解在此种数据类型的字段上能使用哪种类型的运算符。


扩展名<扩展名>错误。

所指定的表名中的文件扩展名无效。请参阅数据源的文档，以了解正确的文件扩展名。


现有的表不能修改。所作的修改可用于创建新的空白表。

如果要依据现有的表创建新表，就必须在“查看表定义”对话框内修改表的名称。新建的表中不包含现有表中的数据。不能用 Microsoft Query 编辑现有的表的定义。


无法找到要更新或删除的记录。需要更多的列来识别该记录，或其它用户已修改了该记录。

在查询中更新或删除了某一记录，但 Microsoft Query 无法在下层表中找到与之相匹配的记录。可能查询中所包含的列还不足以用来辨别要更新的记录，或自运行查询以来又有其它用户修改了该记录。在更新记录之前，请进行下述操作之一：

•	向查询中添加更多的列，或添加足以唯一地识别该记录的列。

•	为从下层表中获得最新的数据，单击“记录”菜单内的“立即查询”命令以再次运行查询。


将文件另存为<名称>。

试图将结果集另存为表，但所指定的表名的扩展名不对，或未指定扩展名。

•	如果要将结果集以正确的扩展名保存，请单击“确定”按钮。

•	如果要返回 Microsoft Query 而不保存结果集，请单击“取消”按钮。


结果集内有不唯一的记录。

结果集内包含相同的记录，原因是“数据”窗格内不包含能够唯一地识别各个记录的字段，如客户标识字段或订单标识字段。对这些相同记录之一所作的修改将影响到所有相同的记录。

为区别这些记录，在开始编辑数据之前，应确认已将下层表中的所有字段添加到了“数据”窗格内。


因为数据库是只读的，故不能创建或删除表。是否仍要继续？

可以查看只读数据库中的表的定义，但不能创建新的表或删除已有的表。


成功地创建了索引。

Microsoft Query 在表中指定的字段上成功地创建了索引。


创建唯一索引时失败。是否要亲自创建该索引？

Microsoft Query 无法在该表上创建唯一索引，即使要保存为该表的结果集所基于的表中包含了唯一索引。

•	如果要显示“创建索引”对话框，以便在该表上创建唯一索引，那么请单击“是”按钮。

•	如果不想创建唯一索引，请单击“否”按钮。


该表中不包含唯一索引，是否要创建一个？

要保存为该表的结果集所基于的表中不包含唯一索引。

•	如果要显示“创建索引”对话框，以便在该表上创建唯一索引，那么请单击“是”按钮。

•	如果不想创建唯一索引，请单击“否”按钮。


无法访问<数据库>。

所用的数据源限制只能从当前数据库（或等价数据库）添加表。


<数字>条记录与所作的选定相匹配。是否要将其全部删除？

因为“数据”窗格内不包含能够唯一地识别各个记录的字段，如客户标识字段或订单标识字段，所以结果集内包含与要删除的记录相匹配的其它记录。如果删除了选定的记录，Microsoft Query 也将删除其它相同的记录。

为在开始编辑数据之前区别这些记录，应确认已将下层表中的所有字段添加到了“数据”窗格内，或在表中创建唯一索引。


无法显示帮助。

Microsoft Query 帮助文件不在当前文件夹内。将该帮助文件移动或复制到当前文件夹内再试一下。


选定要使用的或要从列表框中删除的数据源。当单击“另存为”命令显示“选择数据来源”对话框后，“另存为”对话框内将包含“*.dqy”文件类型。选择该文件类型可保存查询的设计。如果选择特定的数据源，则可将查询的结果集保存为表。


使用在“可用的数据来源”列表框内选定的数据源创建新查询。对于某些类型的数据源，将显示附加的对话框，提示输入其它信息，诸如用户标识、口令、数据库、目录或文件夹等。


关闭“选择数据来源”对话框，并忽略所作的选定。


如果所需的数据源未出现在“选择数据来源”列表框内，可单击“其它”按钮。Microsoft Query 将显示“ODBC 数据源”对话框，该对话框将列出已安装到系统中的所有 ODBC 驱动程序。


从“可用的数据来源”列表框中删除选定的数据源，但并不从系统中删除 ODBC 驱动程序。如果当前某一打开的查询正在使用某数据源，Microsoft Query 将不删除该数据源。


选择用于对结果集合中的记录进行排序的列。如果要用数据源中不在结果集合中的字段对记录进行排序，可用下列语法在“列”编辑组合框中输入字段名称：

(table.fieldname)

单击“添加”按钮即可将排序顺序添加到“查询中的排列”内。


以升序排列记录，即用选定列进行排序时，从最靠前的字母、最小的数字或最早的日期开始排列。


以降序排列记录，即用选定列进行排序时，从最靠后的字母、最大的数字或最晚的日期开始排列。


显示用于排序的每一列的排序顺序。各列在“查询中的排列”列表框中的位置，决定了 Microsoft Query 执行各排序操作的次序。对记录完成排序后，在结果集合中调整各列的顺序将不影响排序的结果。


用“列”列表框中选定的列进行排序。指定用某列进行排序之后，该列将从“列”列表框内删除，并添加到“查询中的排列”列表框内。“排序”对话框仍保持打开状态，以便继续指定其它用于排序的列。


删除“查询中的排列”列表框内选定的排序列。从“查询中的排列”列表框内删除某列后，该列将重新出现在“列”列表框内。


添加或修改参数，这些参数用于从数据源中获取特定数据，以生成数据窗格中的结果集。


显示活动查询的名称。


显示当前数据源中可执行的过程的列表。可在此列表框中选择要执行的过程。可用的过程依赖于所用的数据源或数据库。有关细节可咨询数据库管理员或查阅数据库文档。


将选定的过程粘贴到“执行 SQL”对话框内的“SQL 语句”编辑框中，在该处可执行该选定过程。


重新显示“执行 SQL”对话框，且未向该对话框内粘贴任何过程。


在查询结果集中隐藏重复的值。


将字段中所有相似的值合为一组。


Activate 命令（DDE）

激活指定的查询窗口。当打开了若干窗口时，可用此命令改变活动窗口。只能用于系统通道。

语法

Activate(queryname)

queryname   要激活的查询窗口的名称。

示例

本示例执行了两个查询，创建了两个查询窗口。执行完第二个查询后，本示例使第一个查询所创建的查询窗口成为活动窗口。

DDEExecute chan, "[BuildSQL('Select * From Customers')]"

DDEExecute chan, "[QueryNow()]"

stQueryname1 = DDERequest(chan, "Query")

DDEExecute chan, "[BuildSQL('Select * From ORDERS')]"

DDEExecute chan, "[QueryNow()]"

stQueryName2 = DDERequest(chan, "Query")

DDEExecute chan, "[Activate('" & stQueryname1(1) & "')]"


AllowEdit 命令（DDE）

决定在查询窗口中是否允许编辑。此命令既可用于系统通道，也可用于查询通道。它等价于“记录”菜单内的“允许编辑”命令。

语法 1

AllowEdit(allowedit, locked)

语法 2

Allow.Edit(allowedit, locked)

这两种形式的语法是等价的。

allowedit   决定在查询窗口中是否允许编辑。可以是 True 或 False。

locked   当 UserControl 起作用时，本参数决定是否禁用“记录”菜单内的“允许编辑”命令。可以是 True 或 False。

示例

本示例执行预先建立的 SQL 语句。然后本示例向 Microsoft Query 发送了“允许编辑”命令和 UserControl 命令，以使用户只能查看而不能修改数据源中的数据（UserControl 起作用后，将禁用“允许编辑”菜单命令）。

DDEExecute chan,"[BuildSQL(""" & sql & """)]")

DDEExecute chan,"[QueryNow()]")

DDEExecute chan,"[AllowEdit(False, True)]")

DDEExecute chan,"[UserControl(""&Return Data"", 3, False)]")


BuildSQL 命令（DDE）

通过 DDE 通道，一次一条地建立 结构化查询语言（SQL） 语句，以创建新查询。此命令只能用于系统通道。

语法

BuildSQL[(sqltext)]

sqltext   有效的 SQL 语句。如果 sqltext 为 0（零）或省略，就清除缓冲区内的 SQL 语句。

说明

建立较长的 SQL 语句时，BuildSQL 十分有用。例如，如果某一条 SQL 过长，无法在一条指令内发送完，就可以将其分成几条较短的部分来发送。

SQL 语句建立完成后，可用 QueryNow 命令执行它。

示例

本示例使用 QueryDefinition 请求项返回用于定义查询的 SQL 语句。

sql = DDERequest(chan,"QueryDefinition")

本示例使用 BuildSQL 命令，将所返回的 SQL 字符串连同附加的 WHERE 从句重新发送。

DDEExecute chan, "[BuildSQL(""" & sql & """)]"

DDEExecute chan, "[BuildSQL("WHERE Freight > 10")]"

DDEExecute chan, "[QueryNow()]


Close 命令（DDE）

关闭当前的查询。此命令既能用于系统通道，也能用于查询通道。

语法

Close( )


Command 命令（DDE）

向 Microsoft Query 发送 Open 命令。有些程序限制用于 DDEExecute 函数的字符串长度，本命令就是为这些程序提供的。

此命令只能用于系统通道。

语法

Command(opnum, execstring)

opnum   决定 Microsoft Query 接受命令的方式。可以是下述值。

值	说明
1	用 execstring 初始化 Microsoft Query 的缓冲区（如果缓冲区内已有内容，就清除之），但不执行查询。
2	将 execstring 连接到缓冲区的尾部。
3	将 execstring 连接到缓冲区的尾部，并执行命令缓冲区内的全部内容。因为命令执行后，命令缓冲区的内容将清除，所以不能重复执行 execstring。
execstring   Open 命令的段。整个字符串必须用单引号或双引号引起来。

Microsoft Query 只能支持用 Command 命令发送 Open 命令。

说明

本命令只是为 Q+E 兼容性而提供。建议在可能的情况下尽量使用 BuildSQL 命令来发送较长的 SQL 语句。


Exit 命令（DDE）

退出 Microsoft Query。此命令只能用于系统通道。

语法

Exit(exitall)

exitall   当通道中除执行 Exit 命令的查询之外，还有其它查询处于打开状态时，由本参数决定是否退出 Microsoft Query。可以是 True 或 False。

若指定为 True，则不论打开了哪些查询，都将退出 Microsoft Query。如果 Microsoft Query 通过另一条通道处于用户控制状态下（即执行了 UserControl 命令），将本参数指定为 True 将关闭该通道，并将控制返回到启动 Microsoft Query 的程序中。

若指定为 False，则仅在所有查询都是通过执行 Exit 命令的这条通道打开的情况下，才退出 Microsoft Query。


Fetch 命令和 Fetch.Advise 命令（DDE）

Fetch 命令从 Microsoft Query 中检索数据，并将检索到的数据直接发送到目标程序中。

Fetch.Advise 命令使得不仅在发送 Fetch.Advise 命令时将数据发送到目标程序中，而且当 Microsoft Query 中的数据发生变化时，也自动更新目标应用程序。

这些命令既能用于系统通道，也能用于查询通道。

语法 1

Fetch.Advise(appname, topic, range, values)

语法 2

Fetch(appname, topic, range, values)

appname   数据要发往的目标应用程序的名称。下面是用于 Office 应用程序的 appname 参数：

应用程序	appname 的值
Microsoft Access	MSAccess
Microsoft Excel	Excel
Microsoft Word	WinWord
topic   数据要发往的工作表、文档或控件的名称。

range   工作表、文档或控件中数据要发往的区域。

values   要从 Microsoft Query 检索的数据。（有效的取值可参看下表）。

注释   Fetch.Advise 命令所自动更新的只是查询区域，而非请求项或 row#col# 引用。

可以取为下述值。

取值	说明
request_item	要返回的信息，如 QueryDefinition。
row#col#	指定要检索的特定行或特定列的引用，如 Microsoft Excel 的 R3C5。
/Headers	检索列名称。
/Rownum	检索行号。
All	检索所有记录。
说明

对于 Fetch.Advise 命令，为向目标程序返回数据而创建的通道将保持打开状态，直到发送了 Fetch.Unadvise 命令或 Close 命令。

示例

本示例使用 NumRows 和 NumCols 请求项返回了查询中的行数和列数，然后又将数据连同列标一并返回到 Microsoft Excel 工作表“Sheet1”中。

rows=REQUEST(Chan,"NumRows")

cols=REQUEST(Chan,"NumCols")

DDEExecute chan, "[Fetch(""Excel"", ""Data.xls!Sheet1"", _

    ""R1C1:R"&rows&"C"&cols&""", ""All/Headers"")]"


Fetch.Unadvise 命令（DDE）

去掉由 Fetch.Advise 命令所设置的自动更新特性，并关闭由 Microsoft Query 打开的用于向目标程序传递数据的通道。此命令既能用于系统通道，也能用于查询通道。

注释   Fetch.Unadvise 命令的参数必须与相应的 Fetch.Advise 命令所设置的参数相匹配。

语法

Fetch.Unadvise(appname, topic, range, values)

appname   数据要发往的目标应用程序的名称。（有关的示例请参阅 Fetch.Advise 命令。）

topic   数据要发往的工作表、文档或控件的名称。

range   工作表、文档或控件中数据要发往的区域。

values   要从 Microsoft Query 检索的数据。（有关有效取值的清单，请参阅 Fetch.Advise 命令。）


Logoff 命令（DDE）

注销指定的数据源。此命令只能用于系统通道。

语法

Logoff(source)

source   要中断连接的数据源的名称。


Logon 命令（DDE）

显示可用于登录到数据源的对话框。此命令只能用于系统通道。

语法

Logon(source)

source   要连接的数据源的名称。


ODBCLogon 命令（DDE）

使程序连接到数据源。使用本命令时，可以指定登录时是否为用户提供对话框。此命令只能用于系统通道。

语法

ODBCLogon(connectstring, dialog)

connectstring   提供信息的字符串，这些信息可包括：数据源名称，用户标识和口令等。这些信息是由驱动程序所要求的，驱动程序用这些信息连接到数据源。本参数必须遵循相应的驱动程序所要求的格式。（有关连接字符串的详细内容，请参阅特定数据源的文档。）

注释   因为 Microsoft Query 97 支持文件 DSN（Data Source Name，数据源名称），故可用 ConnectionString 请求项获取由文件 DSN 创建的查询的无 DSN 的连接字符串。此后就可用该连接字符串从任意计算机上连接到相应数据源。

dialog   决定在登录时是否显示对话框。可以取为下述值。

取值	说明
0（零）	不显示任何对话框。
1	显示对话框，用于提示用户输入未在连接字符串中指明的信息。
2	显示对话框，以连接字符串中指明的信息作为对话框内的默认值。
3	等同于 1，但那些对于连接数据源不是必需的信息，在对话框中将变灰显示。
示例

本示例使用 ConnectionString 请求项返回用于连接到数据源的字符串。在用户已登录到数据源后，本示例将连接字符串保存下来，在稍后的时候又用 ODBCLogon 命令再次连接到该数据源。再次连接时，就不需要用户输入信息了。

connstr = DDERequest(chan, "ConnectionString")

' intervening code

DDEExecute chan, "[ODBCLogon (connstr(1), 0)]"


Open 命令（DDE）

打开并执行查询，然后将数据显示在“数据”窗格内。此命令只能用于系统通道。

语法

Open(query)

query   要打开的查询所在的 Microsoft Query 文件（对于 Windows，此类文件的扩展名为 .dqy）或 Q+E 文件（仅用于 Windows，此类文件的扩展名为 .qef）的名称，或要执行的 SQL SELECT 语句。

示例

本示例打开查询“Sales”。

DDEExecute chan, "[Open(""c:\msquery\sales.dqy"")]")

下述语句使用 SQL SELECT 语句执行新查询。

DDEExecute chan, "[Open(""SELECT * FROM pubs.dbo.titles"")]")


QueryNow 命令（DDE）

执行打开的 DDE 通道中的活动查询。如果已用 BuildSQL 命令建立了查询，本命令就执行命令缓冲区中的 SQL 语句，并打开查询窗口。此命令既能用于系统通道，也能用于查询通道。

语法

QueryNow( )

示例

本示例将某一查询的 SQL 语句保存下来，稍后又将该语句重新发送并执行。

sql = DDERequest(Chan, "QueryDefinition")

DDEExecute chan, "[BuildSQL(""" & sql & """)]"

DDEExecute chan, "[QueryNow()]"


SaveAs 命令（DDE）

保存新建查询的设计，或以另外的名称保存已有查询的设计。本命令与“文件”菜单内的“另存为”命令所执行的功能一样。本命令既能用于系统通道，也能用于查询通道。

语法 1

SaveAs(queryname)

语法 2

Save.As(queryname)

这两种形式的语法是等价的。

queryname   查询要保存的新名称。


SetWindowState 命令（DDE）

指定活动窗口打开时是处于普通状态、最小化状态还是最大化状态。此命令既能用于系统通道，也能用于查询通道。

语法

SetWindowState(state)

state   活动窗口的状态。可以取为下述值。

取值	说明
1	普通状态
2	最小化状态（仅用于 Windows）
3	最大化状态


ViewPane 命令（DDE）

指定要在查询窗口中显示哪些窗格。此命令既能用于系统通道，也能用于查询通道。

语法

ViewPane(pane)

pane   指定要显示的窗格。可以取为下述值：

取值	说明
0（零）	仅显示“数据”窗格
1	显示“数据”窗格和“表”窗格
2	显示“数据”窗格和“条件”窗格
3	显示“数据”窗格、“表”窗格和“条件”窗格


UserControl 命令（DDE）

激活 Microsoft Query，并允许用户创建、打开或编辑查询，就如同独立地运行 Microsoft Query 一样。

此命令只能用于系统通道。

语法

UserControl(exittext, appstate, newquery)

exittext   Exit 命令的名称，该命令用于在 DDE 对话结束之后退出 Microsoft Query。如果省略本参数，就使用“Return”。

appstate   程序的状态。可以取为下述值。

取值	说明
1	普通状态
2	最小化状态（仅用于 Windows）
3	最大化状态
如果省略本参数，就使用 Microsoft Query 的当前状态。

newquery   指定在 DDE 对话期间启动 Microsoft Query 时，是否显示“选择数据源”对话框。可以是 True 或 False。

如果 newquery 为 True，则显示“选择数据源”对话框，提示用户选择数据源。如果 newquery 为 False（默认值），就不显示对话框，而相应的通道中所有打开的查询都是可以访问的。

说明

在 Windows 中，当用户单击“文件”菜单内的“退出”命令时，就结束用户控制。然后 Microsoft Query 将返回其原有的程序状态，并将控制返回到目标程序中。

要点   请注意，不要让具有超时特性的程序在用户控制结束之前发生超时。

当 Microsoft Query 在用户控制下运行时，任何新建的或已有的查询都将在同一 DDE 通道中打开。

示例

本示例启动 Microsoft Query，使其最大化，并将“文件”菜单内的“退出”命令替换为“将数据返回到 Microsoft Excel”命令。然后本示例将显示“选择数据源”对话框。

DDEExecute chan, "[UserControl(""&Return To Excel"",3,True)]")


SetQueryName 命令（DDE）

设置活动查询的名称，或者在当前没有活动查询时，用指定的名称创建查询。该名称将出现在查询窗口的标题栏内。

语法

SetQueryName(name)

name   查询的名称。


EnableParameters 命令（DDE）

控制用户是否可以在“条件”窗格和 SQL 窗口中指定参数。默认情况下，用户不能指定参数。如果用户已输入了参数，就不能再禁止参数的指定了。

语法

EnableParameters(flag)

flag   决定用户是否可以指定参数。可以是 0（零）（表示禁止指定参数）或 1（表示允许指定参数）。


SetParameterName 命令（DDE）

设置传递到 Microsoft Query 的查询字符串内所接收的参数的名称。SetParameterName 命令应在 BuildSQL 命令发送之后再发送。

语法

SetParameterName(index, name)

index   参数的编号。

name   参数的名称。

说明

如果由 BuildSQL 命令所发送的 SQL 语句包含参数，但又未接收到 SetParameterName 命令，那么 Query 将以“Parameter n”的形式赋予参数默认的名称，其中 n 为递增的数值。如果用 SetParameterName 命令所发送的参数名称的数目不够，那么剩余的参数将命名为“Parameter n”。如果所发送的参数名称过多，就忽略多余的参数名称。


AddParameters 命令（DDE）

向活动查询添加用于数据透视表的参数。

语法

AddParameters(field1, field2, �)

field1, field2, �   要作为参数添加到条件中的列的名称。新参数的名称定义为字段名称本身。如果指定的字段名称在活动查询中无效，将产生错误。

说明

既使在 Microsoft Query 中禁止了参数输入，也还可以使用 AddParameters 命令。

修改后的 SQL 字符串可通过 ODBCSQLStatement 请求项来返回。

如果要重置参数，就必须重置整条 SQL 字符串。


BuildODBC 命令（DDE）

一次一段地建立任意长度的连接字符串。

语法

BuildODBC([connectstring])

connectstring   有效的连接字符串的一段。如果 connectstring 为 0（零）或省略，就清除缓冲区内的连接字符串。


LogonNow 命令（DDE）

如果已用 BuildODBC 命令建立了连接字符串，本命令就用缓冲区内的连接字符串登录。如果缓冲区内没有连接字符串，将产生错误。

语法

LogonNow([dialog])

dialog   决定在登录时是否显示对话框。可以取为下述值。

取值	说明
0（零）	不显示任何对话框。如果省略本参数，默认值为 0（零）。
1	显示对话框，用于提示用户输入未在连接字符串中指明的信息。
2	显示对话框，以连接字符串中指明的信息作为对话框内的默认值。
3	等同于 1，但那些对于连接数据源不是必需的信息，在对话框中将变灰显示。


UserControl2 命令（DDE）

激活 Microsoft Query，并允许用户创建、打开或编辑查询，就如同独立地运行 Microsoft Query 一样。

此命令只能用于系统通道。

注释   UserControl 命令与 UserControl2 命令之间的区别在于，UserControl2 命令允许向“文件”菜单内添加一条命令，该命令用于关闭所有在 Microsoft Query 中创建的查询，并不带数据地返回到目标程序中。

语法

UserControl2(exittext, canceltext, appstate, newquery)

exittext   Exit 命令的名称，该命令用于在 DDE 对话结束之后退出 Microsoft Query。如果省略本参数，就使用“返回”。

canceltext   用于取消当前工作期的菜单命令的名称。该命令将添加到 Microsoft Query 的“文件”菜单的底部。如果省略本参数，就不添加该命令。

appstate   程序的状态。可以取为下述值。

取值	说明
1	普通状态
2	最小化状态（仅用于 Windows）
3	最大化状态
如果省略本参数，就使用 Microsoft Query 的当前状态。

newquery   指定在 DDE 对话期间启动 Microsoft Query 时，是否显示“选择数据源”对话框。可以是 True 或 False。

如果 newquery 为 True，则显示“选择数据源”对话框，提示用户选择数据源。如果 newquery 为 False（默认值），就不显示对话框，而相应的通道中所有打开的查询都是可以访问的。


删除连接

如果查询中包含内部连接或外部连接，但未检索到所需的记录，那么就可能需要删除这些连接。

1	在“表”窗格内，单击要删除的连接线。

2	按 DELETE 键。

注释

•	删除连接时，查询的结果集内所包含的记录将有变化。根据所删除的连接类型，结果集内的记录可能会增加，也可能会减少。

•	删除某一查询中的连接，只会影响到该查询。例如，如果 Microsoft Query 自动在查询中的两张表之间创建了内部连接，然后用户删除了该内部连接，那么当在其它查询中再次使用这两张表时，Microsoft Query 仍将自动在这两张表之间创建内部连接。


连接中的运算符

可以在连接中使用下列运算符。

运算符	说明
= 等于	选择连接字段的值相等的记录。
<> 不等于	选择连接字段的值不相等的记录。
> 大于	从左边的表内选择连接字段的值大于右边表内连接字段的值的记录。
>= 大于或等于	从左边的表内选择连接字段的值大于或等于右边表内连接字段的值的记录。
< 小于	从左边的表内选择连接字段的值小于右边表内连接字段的值的记录。
<= 小于或等于	从左边的表内选择连接字段的值小于或等于右边表内连接字段的值的记录。


在结果集内转到某一特定的记录

1	单击“记录”菜单内的“转至”命令。

2	键入要转到的记录的编号。


出现了数据库路径无效的消息。

如果数据库位于共享的网络目录中，当设置数据源并选择数据库文件时，记录在数据源中的数据库路径，所包含的是系统当时所用的映射驱动器字母。例如，如果数据库的名称是“Inventory.mdb”，而将驱动器 G 映射到了该数据库所在的共享网络目录上，那么数据源所记录的数据库位置将是“G:\public\Inventory.mdb”。那么当试图使用这一数据源时，或者要运行用这一数据源所创建的查询时，如果驱动器 G 已不再映射到同一共享网络目录上的话，ODBC 驱动程序就将显示一则消息，指出数据库的路径无效。

如果使用的是 Microsoft Access 驱动程序或 Microsoft Excel 驱动程序，那么可通过创建新的数据源来更正这一错误。当指定数据库文件的位置时，请不要选择映射到共享网络目录上的驱动器，而是要键入共享网络目录的 UNC 地址，然后再定位数据库文件。例如，如果数据库文件存储在名为“Shared”的服务器上，就可以键入“\\Shared\public”，然后再选择文件“Inventory.mdb”。

对于其它的 ODBC 驱动程序，在使用某一数据源或者运行用该数据源所创建的查询之前，应确认数据库所在的共享网络目录当前所映射的驱动器字母与创建数据源时所映射的驱动器字母相同。

如果要查阅有关设置数据源的详细内容，请单击 [image] 。


Microsoft Query 疑难解答

请选择：

为什么不能在 Microsoft Query 中继续工作了？

找不到所需的表。

无法创建新的数据源。

无法删除数据源。

为什么有的数据源不能共享？

原先曾正常使用的 ODBC 驱动程序现在不能正常工作了。

出现了数据库路径无效的消息。

在查询中所作的修改或所设置的格式，在再次运行该查询时就不见了。

Microsoft Query 一再地超时，而不能连接到数据库。

无法将两张表中的所有数据组合起来。

无法通过 Microsoft Query 访问 Microsoft Excel 工作表中的数据清单。

如何选择不同时包括在两张表中的记录？

即使当前不在数据库上工作，Microsoft Query 也在不停地使用连接资源。

Microsoft Query 未返回所有可用的记录。

无法用 Microsoft Query 打印结果集。

无法用 Microsoft Query 创建邮件标签。

无法创建所需的连接。

连接未能给出预期的记录。

不能将结果集保存为数据库中的表。

无法添加、复制或移动数据库中的记录。

无法编辑 SQL 过程的参数类型。


找不到所需的表。

•	如果“添加表”对话框内所列的表中没有所需的表，可尝试下述方法。依赖于不同数据源的不同可用选项，可用的方法各有不同。

•	所需的表可能属于另外的所有者。请在“添加表”对话框中的“Owner”列表框内单击其它的所有者。使用某一张表之前，可能需要获得该表所有者的授权。

•	可能当前显示的表的类型中不包括所需的表的类型。请在“添加表”对话框内单击“选项”按钮，然后选中“显示”下方所有的表类型。

•	所需的表可能是在 Microsoft Query 连接到数据库以后才添加到数据库中的。如果要看到最近所添加的表，请单击“添加表”对话框内的“选项”按钮，然后单击“刷新”。

•	如果要使用的表位于网络共享目录的单独文件中，请确认所提供的网络路径是完整的，如下所示。

•	单击“添加表”对话框内的“网络”按钮。

•	在“路径”编辑框内输入网络地址，如“\\computer1\share”。

•	单击“确定”按钮，然后在“驱动器”下拉列表框内单击要连接的共享目录。

•	在“目录”列表框内，单击要添加的表所在的文件夹。

•	在“表名”列表框内单击要添加的表，然后单击“添加”按钮。


无法创建新的数据源。

首先确认是否有相应于数据源的适当的 ODBC 驱动程序。ODBC 驱动程序使 Microsoft Query 更加通用，使之可通过安装新的驱动程序连接到新的数据库上。但是，必须为所用的数据库类型安装和设置正确的驱动程序。

除了随 Microsoft Query 一起提供的驱动程序之外，还可以使用第三方厂商所提供的 ODBC 驱动程序。在试图使用第三方的 ODBC 驱动程序之前，最好确认一下有关厂商已在 Microsoft Query 97 下测试了该驱动程序。对于某些数据库，最好选择与该数据库软件一起提供的 ODBC 驱动程序。可与数据库管理员联系，以了解有哪些驱动程序可用，及最好使用哪个驱动程序。有关与 Microsoft Excel 一起提供的 ODBC 驱动程序的详细内容，请参阅 Microsoft Excel 帮助文档。

在设置数据源之前，请先搞清楚相应的数据库的网络地址，并确认是否有足够的权限连接和登录到该数据库上。请咨询一下数据库管理员，以了解登录名、密码或其它必需的权限，并确认用所授予的访问权限能否正常工作。

当单击“数据”菜单内的“获取外部数据”命令时，如果看不到所需的驱动程序，那么请单击“新建查询”，双击“Databases”标签上的“New Data Source”，然后在“创建新数据源”对话框第二步中的清单内单击所需的驱动程序。应确认正确地安装了 ODBC 驱动程序。如果要查阅有关安装 ODBC 驱动程序的内容，请单击 [image] 。

如果安装了相应的驱动程序，并在“创建新数据源”对话框第二步中的清单内选择了它，那么在该对话框第三步中要提供所有必需的信息。如果要查阅有关 Microsoft ODBC 驱动程序的信息，请单击“连接”按钮，然后在该驱动程序的设置对话框内单击“帮助”按钮。有关第三方厂商的驱动程序的信息，请参阅相应驱动程序的帮助或文档。

如果是用微软所提供的 ODBC 驱动程序来设置数据源，那么选择下述驱动程序名称，可查阅有关在“创建新数据源”对话框的第三步中应设置的内容。

Microsoft Access 驱动程序

Microsoft dBase and FoxPro 驱动程序

Microsoft Excel 驱动程序

Microsoft Paradox 驱动程序

Microsoft 文本驱动程序

SQL Server 驱动程序


Microsoft Access 驱动程序

1	在“创建新数据源”对话框的第三步中，单击“连接”按钮。

2	单击“数据库”组合框内的“选择”按钮，然后用“选择数据库”对话框定位数据库文件。

如果希望 Microsoft Query 以只读方式打开数据库，请选中“只读”复选框。

如果希望在使用此数据源时，由 Microsoft Query 独占该数据库，请选中“独占”复选框。

3	单击“确定”按钮。

如果需要对数据库设置附加的连接参数，请单击“高级”按钮。如果不清楚是否需要修改这些设置，请咨询数据库管理员。如果要查阅有关高级设置的内容，请单击“取消”按钮，然后单击“ODBC Microsoft Access 97 Setup”对话框内的“帮助”按钮。

4	如果希望 Microsoft Query 访问系统数据库，请单击“系统数据库”组合框内的“数据库”单选钮，然后单击“系统数据库”按钮。在“选择系统数据库”对话框内定位系统数据库文件，然后单击“确定”按钮。

5	单击“确定”按钮，然后在“Authorization”下方输入登录名和密码。如果访问数据库时不需要登录名和密码，就让“Authorization”下方的编辑框保持空白。

注释   可用“ODBC Microsoft Access 97 Setup”对话框创建、修复和压缩 Microsoft Access 数据库。如果不熟悉这些操作，那么最好只用 Microsoft Access 执行这些操作。有关的详细内容请参阅 Microsoft Access 帮助。


Microsoft dBase and FoxPro 驱动程序

执行下述步骤之前，最好将所有要用的数据库文件都放在同一文件夹内，从而“查系向导”就可以找到所有的文件，而不必在每次向查询中添加表时都输入完整路径。如果需要的话，可以将数据库文件放在一个文件夹中，而将索引文件放在另一个文件夹中。

1	在“创建新数据源”对话框的第三步中，单击“连接”按钮。

2	在“版本”下拉列表框内，选择创建数据库文件时所用的 dBase 或 FoxPro 的版本号。

3	如果数据库文件不在当前文件夹内，就请清除“使用当前目录”复选框，然后单击“选择目录”按钮以定位数据库所在的文件夹。

4	如果数据库的索引文件在另一个文件夹内，请单击“选择索引”按钮以定位该文件夹。


Microsoft Excel 驱动程序

用 Microsoft Excel ODBC 驱动程序只能访问位于同一文件夹内的工作簿中的数据。执行下列步骤之前，应将所有要访问的工作簿都复制到同一文件夹内，并为所需的工作表区域指定名称，以便 Microsoft Query 能将其识别为一张表。

7必须为要访问的数据所在的每个文件夹设置一个单独的数据源。

1	在“创建新数据源”对话框的第三步中，单击“连接”按钮。

2	在“版本”下拉列表框内，选择用于创建工作簿的 Microsoft Excel 的版本号。如果工作簿是用 Microsoft Excel 95（Microsoft Excel 7.0 版）创建的，请单击“Excel 5.0/7.0”项。

3	单击“选择工作簿”按钮，然后定位工作簿文件。


Microsoft Paradox 驱动程序

可从 Microsoft Office 97 或 Microsoft Excel 97 光盘的“ValuPack”文件夹，或者安装 Microsoft ODBC 驱动程序的网络目录中获得 Microsoft Paradox 驱动程序。如果没有从光盘上安装 Microsoft ODBC 驱动程序，并且能从 Microsoft Excel 中访问全球广域网，那么请指向“帮助”菜单内的“Microsoft on the Web”子菜单，然后单击“免费资料”命令。

执行下述步骤之前，最好将所有要用的数据库文件都放在同一文件夹内，从而“查系向导”就可以找到所有的文件，而不必在每次向查询中添加表时都输入完整路径。

1	在“创建新数据源”对话框的第三步中，单击“连接”按钮。

2	在“版本”下拉列表框内，选择创建数据库文件时所用的 Paradox 的版本号。

3	如果数据库文件不在当前文件夹内，就请清除“使用当前目录”复选框，然后单击“选择目录”按钮以定位数据库所在的文件夹。

4	如果需要对数据库设置高级选项，请单击“选项”按钮。如果不清楚是否需要修改这些设置，请咨询数据库管理员。如果要查阅有关高级设置的内容，请单击“ODBC Paradox Setup”对话框内的“帮助”按钮。


Microsoft 文本驱动程序

必须为要访问的文本文件所在的每个文件夹设置一个单独的数据源。如果要用同一数据源访问若干文本文件中的数据，那么在执行下述步骤之前，请将所有这些文本文件复制到同一文件夹内。

1	在“创建新数据源”对话框的第三步中，单击“连接”按钮。

2	如果相应的文本文件不在当前文件夹内，就请清除“使用当前目录”复选框，然后单击“选择目录”按钮以定位文本文件所在的文件夹。

注释   可以访问若干种格式的文本文件中的数据，包括由空格、逗号或制表符分隔的数据。如果要查阅有关可用的文本文件格式的详细内容，请单击“ODBC Text Setup”对话框内的“帮助”按钮。


SQL Server 驱动程序

1	在“创建新数据源”对话框的第三步中，单击“连接”按钮。

2	在“服务器”编辑框内，输入网上的 SQL Server 的名称。如果要查阅“服务器”编辑框的可用选项的信息，请单击“帮助”按钮。

3	在“网络地址”编辑框内，输入 SQL Server 数据库的地址。如果要使用 Microsoft SQL Server 数据库，请单击“Default”。

4	在“Network library”编辑框内，如果需要的话输入 SQL Server 网络库 DLL 的网络地址，或单击“Default”。如果要查阅有关“Network library”编辑框的详细内容，请单击“帮助”按钮。

5	单击“选项”按钮，并在“数据库名称”编辑框内输入 SQL Server 数据库的名称。

6	设置数据库所需的其它选项。如果不清楚应修改哪些设置，请咨询数据库管理员。如果要查阅有关选项设置的内容，请单击“帮助”按钮。

7	单击“确定”按钮，然后输入登录名和密码。


无法删除数据源。

用早先版本的 Microsoft Query 创建的数据源的名称中包含“(not shareable)”。所有的数据源（包括用 Microsoft Query 97 创建的数据源）的文件扩展名都是“.dsn”。

用早先版本的 Microsoft Query 创建的数据源文件通常存储在“Common Files”文件夹中的“ODBC Datasources”文件夹内。如果想知道用哪个文件夹存储了数据源文件，请单击“数据”菜单内的“获取外部数据”命令，再单击“新建查询”，然后单击“选项”按钮。

可用下述方法找到并删除数据源文件：

•	如果所有的数据源文件都存储在“Common Files\ODBC Datasources”文件夹内，请双击 Windows 控制面板中的“32bit ODBC”图标，再单击“File DSN”标签，然后用“删除”按钮删除不需要的 .dsn 文件。

•	如果数据源文件存储于若干文件夹内，那么在 Windows 中，可搜索所有以“.dsn”为扩展名的文件，然后删除不需要的文件。


为什么有的数据源不能共享？

Microsoft Query 97 的数据源与用早先版本的 Microsoft Query 创建的数据源的格式不同。用早先版本的 Microsoft Query 创建的数据源和查询，在 Microsoft Query 97中仍能使用，单用这些数据源所创建的查询将不能与其它用户共享。

安装 Microsoft Query 时，所有用早先版本的 Microsoft Query 或 ODBC 创建的数据源都将存储为文件，并且在这些数据源的名称尾部添加“(not shareable)”，以与其它的数据源相区别。

有些查询或报表模板使用了不可共享的数据源内所指定的外部数据库中的数据，如果想要共享这些查询或报表模板，就必需为这些外部数据库创建新的 Microsoft Query 97 数据源，然后用新的数据源创建查询和报表模板。如果要查阅有关创建 Microsoft Query 97 数据源的内容，请单击 [image] 。

有关删除不可共享的数据源的内容，请单击 [image] 。


原先曾正常使用的 ODBC 驱动程序现在不能正常工作了。

在下述情况下，可能需要使用另外的驱动程序：

•	Microsoft Query 97 需要 32 位的 ODBC 驱动程序，如与 Microsoft Query 97 一起提供的驱动程序。例如，如果用 Visual Basic 开发了一个获取外部数据的 Microsoft Excel 97 程序，然后将该程序交给 Microsoft Excel 5.x 版的用户使用，那么，该程序就可能无法在 Microsoft Excel 5.x 版系统中的 16 位 ODBC 驱动程序上运行。

•	如果所安装的 Microsoft ODBC 驱动程序不是包括在 Microsoft Excel 97 或 Microsoft Office 97 软件包中的驱动程序，那么应确认所安装的驱动程序是 3.0 版或 3.0 版以后的版本。Microsoft ODBC 驱动程序较早的版本将不能与 Microsoft Query 97 一起工作。

•	如果使用的是第三方的 ODBC 驱动程序，那么在升级数据库或安装新版的数据库时，可能也需要为 Microsoft Query 安装新的 ODBC 驱动程序。如果要了解这样做是否必要，请参阅数据库的相关文档。


在查询中所作的修改或所设置的格式，在再次运行该查询时就不见了。

当向 Microsoft Excel 返回数据时，就将查询的定义保存成为了工作表的一部分，但此时并未自动将查询保存为独立的文件。然后当对外部数据区域的查询进行编辑时，在 Microsoft Query 中对格式和列标题所作的修改就不会保留。

如果要保留在 Microsoft Query 中所设置的格式，请在完成所需的修改后，单击 Microsoft Query 中“文件”菜单内的“另存为”命令，并在“文件类型”下拉列表框内选择“Query 文件(*.qry)”。当再次打开查询文件时，就将看到原来所保存的 Microsoft Query 格式。


Microsoft Query 一再地超时，而不能连接到数据库。

默认情况下，数据源的 ODBC 驱动程序预定义了一定的时间间隔，Microsoft Query 将试图在该时间间隔内完成与数据源的连接。如果经常需要较长的时间来连接到数据库上，那么可以设置一个较长的时间间隔。单击 中“编辑”菜单内的“选项”命令，确认选中了“如果在下列时间内仍没有连接上，则取消连接：”复选框，然后在编辑框内输入所需的秒数。

如果不想限制 Microsoft Query 完成连接要用的时间，可清除“如果在下列时间内仍没有连接上，则取消连接：”复选框。在这种情况下，如果 Microsoft Query 无法连接到数据源，可按 ESC 键取消连接操作。


无法将两张表中的所有数据组合起来。

如果想要将两张有着类似但又不完全相同的数据的清单内所有的数据都组合起来，比如两张有关客户信息的清单（表），每张清单内对各个客户都有不同的信息（字段），而每张清单内都有另一张清单所不包括的客户，那么就可以创建一个包含所有客户的查询。这种类型的查询称为完全外部连接。

1	在 Microsoft Query 中创建一个查询，并将两张表都添加到该查询中。

2	将两张表中相匹配的字段（例如，两张表中的 Customer ID 字段）连接起来。可通过单击某一张表中的字段，并将其拖到另一张表中相匹配的字段上的方法来实现。

此处所选的字段，必须在每一张表中的每一条记录内都有信息，即都不能为空值。例如，因为两张客户清单中每一条记录的 Customer ID 字段内都有值，故选择了该字段。

3	双击两张表之间的连接线，然后在“连接”对话框内，单击第二个选项。

4	单击“添加”按钮，然后单击“关闭”按钮。

5	向查询中添加所需的字段。

6	单击“视图”菜单内的“SQL”命令。

7	选定“SQL 语句”对话框内的语句，然后按 CTRL+C 组合键复制这些语句。

8	单击“确定”按钮。再次双击连接线，然后在“连接”对话框内，单击第三个选项。

9	单击“添加”按钮，然后单击“关闭”按钮。

10	单击“视图”菜单内的“SQL”命令。

11	在“SQL 语句”对话框内语句的结尾处单击，按 ENTER 键，输入下述大写的单词，然后再按 ENTER 键：

UNION

12	按 CTRL+V 组合键将所复制的语句粘贴到单词 UNION 之后。

13	单击“确定”按钮，然后当提示道查询不能按图形方式形式时，再次单击“确定”按钮。


无法通过 Microsoft Query 访问 Microsoft Excel 工作表中的数据清单。

在 Microsoft Excel 工作表上进行下述检查：

•	请确认数据清单遵循 Microsoft Excel 清单格式。（有关在工作表上创建数据清单的准则的详细内容，请参阅 Microsoft Excel 帮助。）为将要作为表的区域指定名称，并保证为每个区域指定了不同的名称。

•	请确认命名了数据清单。Microsoft Query 仅将那些已命名的区域识别为表。如果要为区域命名，请在 Microsoft Excel 中选定整个区域，然后在公式栏上的“名称”框内输入名称。

请不要试图通过选中“表选项”对话框中“显示”组合框内的“系统表”选项来访问 Microsoft Excel 的表。如果采用了这一方法，那么 Microsoft Query 有可能会将工作表上的空白单元格识别为数据，并且有可能无法识别某些真正的数据，从而无法正确地检索数据。

•	对要组合的各数据清单内的列使用相同的格式。例如，如果每张清单内都有日期列，那么就应对各清单内的日期列应用相同的日期格式。如果在列内混合使用文字和数字格式，Microsoft Excel 驱动程序就可能无法找到并组合所有的数据。

•	请不要在清单内使用列标志，如“Table”或“Database”等。Microsoft Query 内部使用了一些标志，所以不能在数据中识别这些标志。

•	用 Microsoft Excel 驱动程序设置的数据源只能访问一个文件夹内的工作簿。如果各数据清单分散在两个工作簿内，就应保证这两个工作簿都处于设置数据源时指定的工作簿所在的文件夹内。

•	启动 Microsoft Query 之前，应确认所有要使用的工作簿都复制到了数据源所指定文件夹内。创建查询时，Microsoft Query 并不能自动识别新添加到数据源文件夹内的工作簿。可单击“添加表”对话框中的“选项”按钮，再单击“刷新”按钮来访问新添加的工作簿。

注释   当希望组合两张或多张Microsoft Excel 数据清单中的数据时，Microsoft Query 就非常有用。如果只是使用单张工作表上的数据，或者要在单张工作表上使用简单的条件来选择数据的话，那么使用 Microsoft Excel 的“自动筛选”命令和“高级筛选”命令（位于“数据”菜单内的“筛选”子菜单内）更为简便。有关自动筛选和高级筛选的详细内容，请参阅 Microsoft Excel 帮助。


如何选择不同时包括在两张表中的记录？

如果两张表有着类似的数据，比如两张有关客户信息的清单（表），每张清单内都有另一张清单所不包括的客户，那么就可以创建一个仅返回第一张表中与第二张表的记录不匹配的记录的查询。这种类型的查询称为 subtract 连接。

1	在 Microsoft Query 中创建一个查询，并将两张表都添加到该查询中。

2	将两张表中相匹配的字段（例如，两张表中的 Customer ID 字段）连接起来。可通过单击某一张表中的字段，并将其拖到另一张表中相匹配的字段上的方法来实现。

3	双击两张表之间的连接线，然后在“连接”对话框内，单击第二个选项。

4	单击“添加”按钮，然后单击“关闭”按钮。

5	将被连接的字段添加到查询中。

6	将第二张表中另一个字段添加到查询中。此处所选的字段应在第二张表中的每一条记录中都有数据。例如，如果连接了两张表中的“Customer ID”字段，那么此处应添加第二张表中的“Customer Name”字段

7	单击“视图”菜单内的“条件”命令。

8	在第一个条件字段中，单击在第 6 步中所添加的字段。

9	在第一个“值”字段中，键入“Is Null”。

10	单击“立即查询”按钮可查看只存在于第一张表，而不存在于第二张表中的记录。

11	向查询中添加其它所需的字段，然后将数据返回到 Microsoft Excel。

注释   如果还想查看第二张表中与第一张表的记录不匹配的记录，那么可用上述相同的步骤再创建一个查询，只是将第二张表作为上述的第一张表，而将第一张表作为上述的第二张表。


即使当前不在数据库上工作，Microsoft Query 也在不停地使用连接资源。

默认情况下，Microsoft Query 与数据库建立单一的连接，并在退出之前一直保持该连接，不管在此期间对该数据库打开了多少查询窗口。如果在 Microsoft Query 工作期内对多个数据库创建了查询，那么所打开的连接就将白白占用资源和昂贵的连接时间。

如果要使耗费的连接时间最少，可以在对某一数据库的所有查询窗口都关闭时，令 Microsoft Query 中断与该数据库的连接。如果只希望当存在打开的查询窗口时才保留与数据库的连接，可单击“编辑”菜单内的“选项”命令，然后清除“在 MS Query 关闭之前保证连接打开”复选框。


Microsoft Query 未返回所有可用的记录。

•	请确认返回的记录数目未受限制。单击“编辑”菜单内的“选项”命令，然后确认清除了“用户设置”下方的“返回的最大记录数”复选框。

•	请确认正确地输入了指定的条件，从而能检索到所需的记录。如果要查阅有关指定条件的详细内容，请单击 [image] 。

•	请确认所创建的连接产生了所期望的效果。如果要查阅有关连接的详细内容，请单击 [image] 。


无法用 Microsoft Query 打印结果集。

Microsoft Query 是用于从数据库中检索数据的工具。它并不能直接创建打印报表。

如果要打印结果集，可先单击“文件”菜单内的“将数据返回到 Microsoft Excel”命令以将其返回到 Microsoft Excel 中。当结果集到了 Microsoft Excel 中以后，就可用 Microsoft Excel 中的所有格式和打印命令来排列和打印数据。有关用 Microsoft Excel 打印的详细内容，请参阅 Microsoft Excel 帮助。


无法用 Microsoft Query 创建邮件标签。

Microsoft Query 是用于从数据库中检索数据的工具。它并不能创建邮件标签。不过，可将由 Microsoft Query 检索到的数据用于 Microsoft Excel 或 Microsoft Word 中以创建邮件标签。

首先单击“文件”菜单内的“将数据返回到 Microsoft Excel”命令以将数据返回到 Microsoft Excel 中。当结果集到了 Microsoft Excel 中以后，就可将数据用作 Word 中的邮递清单。有关邮件标签的详细内容，请参阅 Microsoft Excel 帮助。


无法创建所需的连接。

如果查询中包含多于两张的表表，就不能再创建外部连接了。外部连接是“连接”对话框内的第二和第三个选项。

可以创建任意数目的内部连接（“连接”对话框内的第一个选项），但每个查询中只能创建一个外部连接。如果熟悉 SQL 语言的编程，就可以试着修改“SQL”对话框（单击“视图”菜单内的“SQL”命令时将出现“SQL”对话框）内的 SQL 语句来创建若干外部连接。

如果要查阅有关用外部连接组合记录的内容，请单击 [image] 。


连接未能给出预期的记录。

Microsoft Query 自动连接两张表时所用的默认连接类型是内部连接（“连接”对话框内的第一个选项）。当两张表之间的连接是内部连接时，第二张表中与第一张表中的记录不匹配的记录将不包括在结果集内。

两张表中，当某一张表中的记录在另一张表中未出现时，如果要检索两张表中的所有记录，可使用外部连接（“连接”对话框内的第二和第三个选项）。如果要查阅有关用外部连接组合记录的内容，请单击 [image] 。

两张表之间的外部连接有时不返回第二张表中的任何记录。如果此时又在两张表之间添加了一个内部连接，那么 Microsoft Query 将不会检索任一张表中的任何记录。如果要获取数据，就必须删除两个连接之一。

如果要查阅有关连接的详细内容，请单击 [image] 。


不能将结果集保存为数据库中的表。

Microsoft Query 97 不允许将结果集保存为数据库中的表。如果数据库能够导入 Microsoft Excel 的数据，那么就可以先将结果集返回到 Microsoft Excel 中，然后用数据库中的相应命令将 Microsoft Excel 数据导入为一张表。例如，Microsoft Access 带有电子表格导入向导，用该向导就能把 Microsoft Excel 数据创建为表。有关的详细内容，请参阅相应数据库的文档或帮助。

如果数据库能够导入文本文件，那么可以先将结果集返回到 Microsoft Excel 中，再将其另存为文本文件，然后用数据库中的相应命令将该文本文件导入为一张表。有关文本转换的内容，请参阅 Microsoft Excel 帮助。


无法添加、复制或移动数据库中的记录。

在 Microsoft Query 97 中，可以编辑或删除已存在与数据库中的记录，但不能向数据库添加新记录或改变记录的顺序。

如果需要添加或复制记录，请直接打开相应的数据库，然后用该数据库所提供的命令进行所需的操作。有关的内容或指导请咨询数据库管理员。

用“记录”菜单内的“排序”命令，可以修改结果集中的记录顺序。在 Microsoft Query 中所进行的排序并不影响下层的数据库，而只是影响结果集。如果要查阅有关的详细内容，请单击 [image] 。


无法编辑 SQL 过程的参数类型。

如果要在 SQL 存储过程中创建参数并设置参数的数据类型，请执行下述步骤：

1	单击“文件”菜单内的“执行 SQL”命令。

2	在“SQL 语句”框内，用固定参量的过程创建查询，然后单击“保存”按钮。

3	单击“视图”菜单内的“SQL”命令。

4	在“SQL 语句”框内，将固定的参量替换为“?”。

5	单击“确定”按钮，然后单击“视图”菜单内的“参数”命令。

6	如果要修改参数的数据类型，单击相应参数，再单击“编辑”按钮。


地址

通向对象、文档、文件、页面或其它目标的路径。地址可以是 URL（Internet 站点的地址）或 UNC 网络路径（局域网上的文件地址）。地址可能还会包含其它特性的信息，如主地址所指向的文件中的 Microsoft Excel 单元格区域。


计算字段

查询的结果集内显示某一表达式的结果，而不是显示数据库中的数据的字段。


列标

Microsoft Query 中，“数据”窗格内每一列顶部包含字段名称的灰色区域（该字段名称可以改为带有描述性的其它名称）。单击列标可选定整列。拖动列标右边的边框可增大或减小列宽。如果要使列宽自动调整到该列内最大的值所占的宽度，双击列标的右边框即可。


常量

非计算所得的值。例如，日期 10/9/96，数字 210，及文字“Quarterly Earnings”都是常量。表达式或由表达式计算所得的值不是常量。


条件

用于限定查询的结果集内应包含哪些记录的条件。例如，下述条件将选择那些“Order Amount”字段的值大于 30,000 的记录：

Order Amount > 30000


“条件”窗格

Microsoft Query 窗口中的一个区域，该区域显示用于限定查询的结果集内应包含哪些记录的条件。

“条件字段”行内显示条件所应用的字段。Microsoft Query 仅检索此行内所指定的字段的值满足条件的记录。“值”行内显示为条件所设置的表达式。“或”行内显示记录应满足的变通条件。

创建新的查询时，并不自动显示“条件”窗格。可通过单击工具栏上的“显示/隐藏条件” [image] 工具来隐藏或显示“条件”窗格。


“数据”窗格

Microsoft Query 窗口中的一个区域，该区域显示查询的结果集。在“表”窗格内，双击表中的字段名称，可将相应的字段添加到“数据”窗格中。


数据源

用于标识用户要访问的数据库，并包含连接该数据库所必需的信息。例如，Microsoft Access 数据库；或包含一组 Microsoft FoxPro 文件或 dBASE 文件的目录；或Microsoft SQL Server 数据库、该数据库所在的服务器和用于访问服务器的网络；或支持开放数据库连接（ODBC）的数据服务器。


数据库

涉及特定的主题或意义的数据的集合。在数据库内，有关特定实体（如雇员或订单）的信息分类组织在表、记录和字段内。

像 Microsoft Access、dBASE 和 SQL Server 之类的数据库应用程序，可用于将大量的数据存储起来，并对这些数据进行排序和检索操作。


表达式

可得出单个数值的运算符、字段名称、函数和常量的组合。在 Microsoft Query 中，可用表达式指定条件（例如，Order Amount > 10000）或对字段的值进行计算（例如，Price * Quantity）。


外部数据

存储在独立于 Microsoft Query 和启动 Microsoft Query 的应用程序的数据库（如 Microsoft Access、dBASE 或 SQL Server）中的数据。


外部数据区域

Microsoft Excel 中来自外部数据库的数据。可像对 Microsoft Excel 中的其它数据那样对外部数据区域设置格式或将其用于计算。如果下层数据库中的数据发生了改变，可用 Microsoft Excel 中“数据”菜单内的“更新数据”命令来更新外部数据区域。


字段

存储于表中的分类信息，如姓氏或订货量。当 Microsoft Query 在“数据”窗格内显示结果集时，字段用列表示。


函数

预先编写的表达式，该表达式根据计算或其它操作所得的结果返回数值。例如，Sum 函数返回两个或若干数值的和。Microsoft Query 假定数据源支持下列五个函数：

函数	说明
Avg	字段中数据的平均值
Count	字段中数据的个数
Max	字段中数据的最大值
Min	字段中数据的最小值
Sum	字段中数据的总和
注释   有些数据源可能并不全部支持这些函数，或者还可能支持另外的函数。如果要了解数据源所支持的函数类型，请参阅相应数据源的 ODBC 驱动程序的帮助，或与驱动程序的供应商联系。


标识符

用在表达式中的字段名称。例如，“Order Amount”是订货量所在的字段的标识符（字段名）。可用表达式（如 Price*Quantity）替代标识符。


索引

数据库的一种组件，用于加快数据的检索。如果表中有索引，就可通过查找索引来检索该表中的数据。


内部连接

两张表的字段之间的连接，该连接只选择两张表中所连接的字段的值相等的记录。当两张表中相连接的字段的值相等时，Microsoft Query 就将两张表中相匹配的记录组合起来，并在结果集内将其显示为一条记录。如果一张表中的记录在另一张表中没有相匹配的记录，那么该记录就不出现在结果集内。

Microsoft Query 自动连接两张表时，内部连接是默认的连接类型。


连接

两张表的信息之间的连接。Microsoft Query 根据连接来决定如何显示来自两张表的信息，即把两张表中连接字段的数据相互匹配的记录组合起来。然后 Microsoft Query 将根据连接的类型决定在结果集内包含或不包含那些不匹配的记录。


连接线

Microsoft Query 中，在两张表之间连接字段，以显示数据的相互联系的线。连接的类型决定了哪些记录将包含在查询的结果集内。


锁定的字段或记录

在数据库中的记录、字段或其它对象上所指定的条件，该条件只允许在 Microsoft Query 中查看该对象，而不能修改该对象，即使之成为只读对象。


名称

Microsoft Excel 中代表单元格、单元格区域、公式或常量的单词或字符串。


ODBC 驱动程序

动态连接库（DLL）文件，Microsoft Query 和 Microsoft Excel 用该动态连接库连接到特定的数据库上。各个数据库应用程序（如 Microsoft Access 或 dBASE）或者数据库管理系统（如 SQL Server）都要求不同的驱动程序。ODBC 驱动程序使 Microsoft Query 更加通用，使之可通过安装新的驱动程序连接到新的数据库上。


运算符

指明要在表达式中所执行的计算（如加、减、乘、除等）类型的符号。运算符包括算术运算符和得出 TRUE 或 FALSE 值的比较运算符（也称为逻辑运算符）。


外部连接

两张表的字段之间的连接，该连接选择某一张表中的所有记录，不管这些记录是否与另一张表中的记录相匹配。当两张表中相连接的字段的值相等时，Microsoft Query 就将两张表中相匹配的记录组合起来，并在结果集内将其显示为一条记录。如果一张表中的记录在另一张表中没有相匹配的记录，那么该记录仍将出现在结果集内，但在不匹配的记录处将显示空白单元格。


参数型查询

一种类型的查询，此类查询运行时，将提示用户输入用于选择在结果集内应包含哪些的记录的参数值，从而同一查询可用于检索不同的结果集。在参数型查询中，可以指定运行时 Microsoft Query 将要显示的提示文字，以说明其所要求的参数。例如，可以创建按城市选择记录的参数型查询，当运行查询时，可以显示自定义的提示文字“请输入城市名：”，然后该查询将只选择用户所输入的城市的记录。


密码

单词、短语或字符串，用于防止对数据库进行未授权的访问。如果要访问数据库，就必须在创建数据库的数据源，或连接数据库以创建查询时，正确地输入密码。


数据透视表

交互式的表，用于汇总和分析现有的清单和表中的数据。可用“数据透视表向导”指定要使用的数据清单和表，并定义如何在数据透视表内安排数据。数据透视表创建好以后，还可以通过拖动数据透视表字段和数据透视表项的方式重新组织数据。


主关键字

唯一地标识表中的每条记录的一个或多个字段。就像牌照号码唯一地标识一辆汽车那样，主关键字唯一地标识一条记录。


查询

用于在 Microsoft Query 或 Microsoft Access 中查找一些记录的方法。这些记录是有关数据源中数据的特定问题的答案。


查询设计

查询窗口中所包含的所有元素，包括表、添加到“条件”窗格中的条件、向“数据”窗格添加字段的顺序以及在结果集内使用的字体。另外，查询设计也指明“自动查询”是处于打开状态还是处于关闭状态，以及是否可以编辑数据源中的数据源。


区域

表上的两个或多个单元格。区域中的单元格可以是相邻的，也可以是分离的。


只读

设置了文件的只读选项后，该文件就只能打开和阅读，而不能修改或保存。如果编辑了只读文件，就只能将所作的修改保存在新命名的文件中。


记录

有关特定的人员、地点、事件或物品的信息的集合。当 Microsoft Query 在“数据”窗格中显示结果集时，记录以行来表示。


更新

用外部数据源更新数据。每次更新数据时，都将看到数据库中所存储的信息的最新版本，包括对数据所作的所有修改。


报表模板

Microsoft Excel 模板，该模板中包含基于外部数据的一个或多个查询或数据透视表。当保存报表模板时，Microsoft Excel 并不保存模板中查询所得的数据，而是在每次打开模板时更新数据。报表模板的文件扩展名是“.xlt”。


结果集

运行查询时所得的记录的集合。可以在 Microsoft Query 中看到查询的结果集，或将结果集返回到 Microsoft Excel 工作表以进行进一步的分析。Microsoft Query 在“数据”窗格内以行和列的格式显示结果集。


行标

Microsoft Query 中每一行左边的灰色区域。单击行标可选定整行。拖动行标的下边框可增大或减小行高。


排序顺序

根据数据的值和数据类型对数据进行排列的方式。可以按字母序或按数字序对数据进行排序。排序顺序可以是升序（从 1 到 9，从 A 到 Z）或降序（从 9 到 1，从 Z 到 A）。


结构化查询语言（SQL）

用于检索、更新和管理数据的语言。用户创建查询时，Microsoft Query 将用 SQL 建立相应的 SQL SELECT 语句。如果熟悉 SQL，就可以通过单击“视图”菜单内的“SQL”命令来查看或修改该 SQL SELECT 语句。


表

存储在若干记录（行）和字段（列）中的，有关特定主题的数据的集合。


“表”窗格

Microsoft Query 窗口中的一个区域，该区域显示查询中的表。每张表内显示了可以检索数据的字段。如果要查看存储在特定字段中的数据，可将该字段添加到“数据”窗格中。

可通过单击工具栏上的“显示/隐藏表” [image] 工具隐藏或显示“表”窗格。


汇总

Microsoft Query 所定义的五种计算类型之一：求和、平均、计数、最小值和最大值。


Web 查询

用于检索 intranet、Internet 或全球广域网上的数据的查询。


全球广域网

通过超级链接在 Internet 上定位的系统。使用 Web 浏览器时，所看到的全球广域网是文字、图片、声音和数字电影的集合。


向查询中添加表

1	单击“添加表” [image] 按钮。

2	选中要添加的表。

3	单击“添加”按钮。

注释   可以向查询中添加任意数目的表。完成添加后，单击“关闭”按钮可关闭对话框。


删除查询中的表

1	单击要删除的表。

2	单击“编辑”菜单内的“删除”命令。


连接查询中的表

如果查询中包含若干张表，并且某一张表中的主关键字字段与另一张表中某一字段的名称相同，Microsoft Query 就将自动创建这两张表之间的“连接”。连接表现了两张表之间的联系，并决定了哪些记录将包括在 Microsoft Query 的结果集内。如果没有看到表之间的连接线，或者要在非相同字段之间指定连接，那么可以创建连接。

默认情况下，Microsoft Query 创建的连接是内部连接，这种类型的连接使 Microsoft Query 只选择两张表中所连接的字段的值相等的记录。可以创建外部连接，这种类型的连接选择某一张表中的所有记录，不管这些记录是否与另一张表中的记录相匹配。还可以选择某一运算符，Microsoft Query 将用该运算符比较连接字段内的数据。

因为连接指明了 Microsoft Query 应选择哪些记录，所以，可以通过修改表之间的连接类型，或选择 Microsoft Query 用于比较数据的运算符，来精确定义查询的结果集。

如果要查阅有关连接如何影响查询的结果集的详细内容，请单击 [image] 。

请选择：

创建连接

修改查询中表之间的连接类型

无法将两张表中的所有数据组合起来

如何选择不同时包括在两张表中的记录


连接如何影响查询的结果集

如果查询中包含若干张表，并且某一张表中的主关键字字段与另一张表中某一字段的名称相同，Microsoft Query 就将自动创建这两张表之间的“连接”。如果两张表之间用连接线连接，该连接线就表现了数据之间的联系。连接的类型是很重要的，因为该类型决定了 Microsoft Query 将选择哪些记录，并将其包括在查询的结果集内。

内部连接（默认的连接类型）只选择两张表中所连接的字段的值相等的记录。当两张表中相连接的字段的值相等时，Microsoft Query 就将两张表中相匹配的记录组合起来，并在结果集内将其显示为一条记录。如果一张表中的记录在另一张表中没有相匹配的记录，那么该记录就不出现在结果集内。

还可以创建外部连接，该连接可选择不相等的记录。创建外部连接时，Microsoft Query 选择某一张表中的所有记录，不管这些记录是否与另一张表中的记录相匹配。当两张表中相连接的字段的值相等时，Microsoft Query 就将两张表中相匹配的记录组合起来，并在结果集内将其显示为一条记录。如果一张表中的记录在另一张表中没有相匹配的记录，那么该记录仍将出现在结果集内，但在不匹配的记录处将显示空白单元格。

如果要查阅有关创建连接或修改连接类型的详细内容，请单击 [image] 。


创建连接

•	将某一张表中的某一字段拖到另一张表中字段清单内的等价字段（相同数据类型且包含类似数据的字段）上。

注释   对于内部连接，Microsoft Query 将只选择两张表或两个查询中连接字段的值相等的记录。如果要查阅有关连接类型及其如何影响查询的结果集的详细内容，请单击 [image] 。


修改查询中表之间的连接类型

1	双击表之间的连接线。

2	在“运算符”框内可选择 Microsoft Query 用于比较连接字段中的数据的运算符。详细内容，请单击   [image] 。

3	如果要创建外部连接，且外部连接使用左边表中的所有记录，请单击“连接内容”下方的第二个选项。在创建外连接时必须选择“=”运算符。

如果要创建外部连接，且外部连接使用右边表中的所有记录，请单击“连接内容”下方的第三个选项。

如果要创建只使用两表中公用记录的内连接，请单击“连接内容”下方的第一个选项。

4	单击“添加”按钮。

5	单击“关闭”按钮。

如果要查阅有关连接类型及其如何影响查询的结果集的详细内容，请单击 [image] 。


对被查询的数据库进行改动

在某些情况下，可以对查询的数据结果进行修改、删除或其它操作。当对查询的结果作出改动时，Microsoft Query 也将对查询所用的下层表中的数据作出相应改动。

在下述情况下，不能对被查询数据库的数据进行修改：

•	相应的数据源处于保护状态，或不允许进行修改。

•	查询中包含多张表。

•	查询中包含汇总或自定义的表达式。

•	要修改的字段处于锁定或禁用状态，或者相应的记录处于锁定状态。

•	要输入的数据的数据类型对相应的数据库是无效的。依据要修改的数据库的不同情况，可能需要在字段中输入不同的特定值。

•	数据库管理员禁止了相应数据库的修改功能。

请选择：

修改被查询数据库的数据

删除被查询数据库的数据

撤消对被查询数据库的数据所作的修改


修改被查询数据库的数据

1	在 Microsoft Query 中，确认“记录”菜单内的“允许编辑”编辑命令处于选中状态。

在某些情况下，Microsoft Query 不允许对数据进行修改。如果“允许编辑”命令变灰，或单击“允许编辑”命令时 Microsoft Query 显示了消息，就不能对数据进行修改了。如果要查阅有关的详细内容，请单击 [image] 。

2	在结果集内，单击要修改的字段。

3	对数据进行所需的修改，然后按 ENTER 键。

注释   如果无意间出了错，单击“编辑”菜单内的“撤消”命令可撤消最近所作的修改。必须在切换到另一条记录或窗口之前撤消所作的修改。


删除被查询数据库的数据

注意   一旦删除了数据库中的记录，该记录就将从结果集和数据库中永久地删除。

1	在 Microsoft Query 中，确认“记录”菜单内的“允许编辑”编辑命令处于选中状态。

在某些情况下，Microsoft Query 不允许对数据进行修改。如果“允许编辑”命令变灰，或单击“允许编辑”命令时 Microsoft Query 显示了消息，就不能对数据进行修改了。如果要查阅有关的详细内容，请单击 [image] 。

2	单击记录左侧的方块，选定整个待删除的记录。

3	单击“编辑”菜单内的“删除”命令。


撤消对被查询数据库的数据所作的修改

•	单击“编辑”菜单内的“撤消”命令。

注释   可以撤消最近对数据所作的修改。必须在切换到另一条记录或窗口之前撤消所作的修改。


设置 Microsoft Query 中的数据格式

保存查询时，Microsoft Query 将保存对查询所作的修改。在 Microsoft Query 中对数据所设置的格式，在将结果集返回到 Microsoft Excel 时将不起作用。

请选择：

修改字段的列标，使之更具描述性

修改列宽或行高

修改结果集内文字的字体、字型或尺寸

隐藏或显示结果集内的字段

修改结果集的布局


修改字段的列标，使之更具描述性

1	双击要修改的字段的列标。

2	在“列标题”编辑框内输入所需的列标。


修改列宽或行高

•	如果要修改列宽，请用鼠标指向列标的右边框，然后拖动该边框，直至达到所需的列宽。

提示   如果要迅速地将列宽调整为该列内最宽的数所占的宽度，双击列标的右边框即可。

•	如果要修改行高，请用鼠标指向行标的下边框，然后拖动该边框，直至达到所需的行高。

注释   对行高的修改将影响结果集内的所有行。


隐藏或显示结果集内的字段

1	单击要隐藏的字段的列标。

2	单击“格式”菜单内的“隐藏列”命令。

如果要显示处于隐藏状态的列，请单击“格式”菜单内的“显示列”命令，然后选择所需的列并单击“显示”按钮。


修改结果集内文字的字体、字型或尺寸

1	单击“格式”菜单内的“字体”命令。

2	进行所需的修改。


修改结果集的布局

对结果集的布局所作的修改，如插入字段或修改字段的排列次序，将在使用 Microsoft Query 时，以及把结果集返回到 Microsoft Excel 时保留。

请选择：

修改结果集内的字段的次序

向结果集内插入字段


修改结果集内的字段的次序

1	单击要移动的字段的列标。

2	将鼠标指针移到列标上，并将其拖到所需的位置。


向结果集内插入字段

1	单击要插入新字段的位置左边的字段的列标。

2	单击“记录”菜单内的“插入列”命令。

3	在“字段”列表框内选择要插入的列。

如果希望列标题更具描述性，请在“列标题”编辑框内输入新的列标题。

4	单击“插入”按钮。


打开现有的查询

1	单击“打开查询” [image] 按钮，再单击要打开的查询文件，然后单击“打开”按钮。

查询文件的扩展名为“.dqy”或“.qry”。

2	如果提示输入登录名、口令或其它信息，请按提示进行操作。这些信息是数据源所要求的。

3	如果提示输入查询的参数值，请按提示进行操作，然后单击“确定”按钮。如果不知道有效的参数值，请与创建该查询的人联系。


创建新查询

在 Microsoft Query 中，构造查询并从外部数据源检索所需的数据时，有着多种选项：

•	可用“查询向导”创建简单的查询。

•	可用 Microsoft Query 中的高级特性创建较为复杂的查询。

•	可用 Microsoft Query 创建参数型查询，此类查询在运行时提示输入条件。

请选择：

构造查询的准则

用“查询向导”创建查询

用 Microsoft Query 创建较为复杂的查询

创建参数型查询


构造查询的准则

使用 Microsoft Query 检索外部数据时，有着多种多样的选项。为了更好地利用这些选项，并确保能获得所需的结果，应记住下列准则：

•	应当用“查询向导”创建简单的查询。在“查询向导”中，可以选择希望在结果集中出现的表和字段。当“查询向导”发现某个表中的主关键字字段与另一个表中的某字段同名时，将自动创建内部连接。另外，可用“查询向导”进行排序和简单的筛选。当“查询向导”执行到最后时，还可选择是将数据返回到 Microsoft Excel，还是在 Microsoft Query 中继续精确调整该查询。创建了查询之后，可在 Microsoft Excel 或 Microsoft Query 中运行之。

•	应当用 Microsoft Query 创建较为复杂的查询。这种方法赋予用户最大的控制能力，因为此时既可创建内部连接，也可创建外部连接，还可使用条件和表达式，这些手段都能使结果集变得更为精炼。所谓表达式是指用运算符、函数、字段名和常量所执行的计算。使用条件可以进行较为复杂的筛选。可在 Microsoft Query 中查看结果集。当确认结果集所包含的就是所需的数据后，就可以将其返回到 Microsoft Excel。创建了查询之后，可在 Microsoft Excel 或 Microsoft Query 中运行之。

•	如果运行查询时，该查询提示用户输入条件，这种查询就叫做参数型查询。只能用 Microsoft Query 创建参数型查询，而不能用“查询向导”创建。所输入的条件用于查询时从表中检索数据。创建了查询之后，可在 Microsoft Excel 或 Microsoft Query 中运行之。


用“查询向导”创建查询

1	单击“新建查询” [image] 按钮。

2	在“数据库”标签上，单击要从其中检索数据的数据库。

如果需要设置新数据源，双击“新数据源”，然后指定数据源。

操作方法

3	确认选中了“使用查询向导创建/编辑查询”复选框，然后单击“确定”按钮。

4	依据“查询向导”的指示进行操作。

5	如果要直接向 Microsoft Excel 返回数据，可单击“将数据返回 Microsoft Excel”，再单击“完成”按钮，然后单击希望放置外部数据的位置。

操作方法

如果要继续精确地定义查询，可单击“在 Microsoft Query 中浏览数据”，再单击“完成”按钮，然后对结果进行所需的修改。

操作方法

如果选择在 Microsoft Query 中继续编辑查询，那么结果集将显示在“数据”窗格中。此后，可在任何时刻向 Microsoft Excel 返回结果集。若想查看有关的详细内容，请单击 [image] 。

注释   如果查询时检索数据花费的时间过长，可按 ESC 键取消该查询。


用 Microsoft Query 创建较为复杂的查询

1	单击“新建查询” [image] 按钮。

2	在“数据库”标签上，单击要从其中检索数据的数据库。或创建新的数据源

操作方法

3	清除“使用查询向导创建/编辑查询”复选框，然后单击“确定”。

4	添加所需的表。

操作方法

5	添加应在结果集中出现的字段。

操作方法

如果希望结果集仅包含特定的记录，可输入条件以筛选记录。

操作方法

如果要创建在运行时提示输入条件的参数型查询，请指定该条件。

操作方法

可创建表之间的内部连接或外部连接以修改结果集。

操作方法

注释

•	完成对所需数据的检索之后，可将结果集返回到 Microsoft Excel。若想查看有关的详细内容，请单击 [image] 。

•	如果查询时检索数据花费的时间过长，可按 ESC 键取消该查询。

•	如果要等到向结果集添加完所有的字段后再检索数据，就应确认未按下“自动查询” [image] 按钮。执行查询的准备工作完成以后，可单击“立即查询” [image] 按钮。


创建参数型查询

1	创建查询，该查询中应包括所需记录所在的表和字段。

操作方法

2	确认未按下“自动查询” [image] 按钮。

3	确认按下了“显示/隐藏条件” [image] 按钮，以显示“条件”窗格。

4	单击“条件字段”行内的第一个单元格，然后单击该单元格中的箭头，从下拉列表框内选择要用作查询参数的字段。

5	单击“值”行内的第一个单元格。键入“[”（左方括号），再键入当运行查询时希望 Microsoft Query 显示的提示文字，然后键入“]”（右方括号）。请参看下列的图示。

提示文字必须与字段名不同，不过提示文字中可包含字段名。

如果要为该查询创建若干参数，在条件窗格中随后的列内重复进行第 4 步和第 5 步，以添加所需的参数。

有关可用于精确定义查询的条件的详细内容，请单击 [image] 。

6	按 ENTER 键。

7	如果要运行该查询，请单击“立即查询” [image] 按钮。

注释   完成对数据的检索之后，可将结果集返回到 Microsoft Excel。若想查看有关的详细内容，请单击 [image] 。


指定检索数据的来源

1	如果当前未显示“选择数据源”对话框，请单击“新查询” [image] 按钮。

2	在“数据库”标签上，双击“新建数据源”。

3	在第一个框内，键入标识数据源的名称。

4	单击第二个框，并单击要用作数据源的数据库的驱动程序。

如果没有看到所需的数据库，那么可能需要安装该类型数据源的 ODBC 驱动程序。

操作方法

5	单击“连接”按钮。

依赖于为数据源所选择的数据库类型，此时出现的对话框内所包含的内容将不尽相同；必须提供对话框所要求提供的信息，以连接数据源。这些信息可能包括登录名、口令、所用数据库的版本号、数据库的路径或其它特定于选定数据库类型的信息。完成这些信息的输入后，单击“确定”按钮。

如果不想在使用数据源时键入登录名和口令，可选中“在数据源定义中保存用户号和口令”复选框。如果该复选框无效，请与数据库管理员联系，以核查是否禁用该选项。

如果希望数据库中某一特定的表自动显示在“查询向导”中，可单击第四个框，然后单击所需的表。

6	单击“确定”按钮。

这样就完成了数据源的设置。


安装 ODBC 驱动程序以便访问外部数据源

1	关闭所有已打开的程序。

2	在“开始”菜单中，用鼠标指向“设置”，再单击“控制面板”。

3	双击“添加/删除程序”图标。

4	单击“安装/卸载”标签，单击“Microsoft Office”或“Microsoft Excel”，然后单击“添加/删除”按钮。

5	当出现“安装”对话框后，单击“添加/删除”按钮。

6	单击“Data Access 和 ActiveX 控件”，再单击“更改选项”按钮。

7	单击“数据库驱动程序”，再单击“更改选项”按钮。

8	单击要安装的 ODBC 驱动程序。

如果要安装所有的 ODBC 驱动程序，请单击“全部选中”按钮。

9	单击“确定”按钮。

10	单击“继续”按钮，然后根据指示完成安装。


向 Microsoft Excel 返回结果集

1	如果当前未显示“将数据返回到 Microsoft Excel”对话框，请单击“返回数据” [image] 按钮，如果出现提示，请输入相应的查询参数值。

2	单击“属性”以调整格式选项和布局选项，这些选项用于控制外部数据如何输入到 Microsoft Excel 中。有关的详细内容请参阅 Microsoft Excel 帮助。

3	如果要将结果集置于选定的工作表上，请单击“现有工作表”。在该工作表中，单击某单元格，结果集的左上角将置于该单元格的位置，再单击“确定”按钮。

如果要将结果集置于新建的工作表上，请单击“新工作表”，再单击“确定”按钮。Microsoft Excel 将向工作簿中添加新的工作表，并自动将结果集置于新工作表的左上角。

如果要在数据透视表中使用外部数据，请单击“数据透视表报告”，再单击“确定”按钮。

注释   单击“外部数据”工具栏上的“刷新状态” [image] 按钮，可以检查花费了很长时间来返回数据的查询的当前状态。如果要取消数据的返回，可单击“停止刷新”。


添加或删除字段

•	如果要向结果集中添加单个字段，可在“表”窗格内双击要添加的字段。

•	如果要从结果集中删除字段，先在“数据”窗格中单击要删除的列标题，再单击“记录”菜单中的“删除列”命令。

提示   如果要将表中所有的字段都添加到结果集中，可双击星号。可能需要滚动到表的顶端以便看到星号。


自动运行查询，或稍后再运行查询

每次向“数据”窗格添加字段，或者添加或修改“条件”窗格中的条件，Microsoft Query 都要自动运行查询，并更新结果集中的数据。如果查询中包含了大量的记录，就可能希望等到完成了对查询所进行的修改以后，再运行查询。

•	如果要在每次添加新字段或新条件后都自动运行查询，请确认按下了“自动查询” [image] 按钮。

•	如果要等到向查询添加新字段或新条件完成以后再运行查询，请确认未按下“自动查询” [image] 按钮。当准备好运行查询以后，可单击“立即查询” [image] 按钮。


用条件限制所检索的记录

可使用条件以检索特定的记录。例如，如果只希望查看法国的供应商，就可以指定“Country”字段必须只包含“France”。Microsoft Query 使用指定的条件检索所需的记录，并将其显示在结果集中。

请选择：

关于条件的用法

检索与某一特定值相匹配的记录

用条件指定检索哪些记录

表达式示例


关于条件的用法

如果选定了一个条件字段，就应确认所选定的字段来自正确的表。例如，如果要查找某一特定国家的所有供应商，就应从“Supplier”表中选择“Country”字段，而不是从“Customer”中选择。

在 Microsoft Query 中，应在“条件”窗格内添加条件。

可按如下方法指定检索记录的条件：

•	可建立算式，然后将该算式用作选定记录的条件。例如，检索所有订货量超过 500 美元的记录时，可指定价格字段和数量字段的乘积必须大于 500 美元。为使用这一条件，应在“条件字段”编辑框内输入“Unit_Price*Quantity”，再在“值”编辑框内输入“>500”。如果要查阅可用作条件的表达式的示例，请单击 [image] 。

•	可查找所有满足条件范围的记录。例如，可检索所有订货时间在 1996 年 7 月 5 日到 1996 年 7 月 23 日之间的记录。为使用这一条件，应在“条件字段”下拉列表框内单击“Order_Date”字段，再在“值”编辑框内输入“>=6/5/96 And <=6/23/96”。

•	可查找所有包含指定的字符的记录。例如，可查找所有电话号码的区号为“111”的供应商的记录。为使用这一条件，应在“条件字段”下拉列表框内单击“Phone”字段，再在“值”编辑框内输入“Like  '(111)%'”。必须将要查找的文字放在单引号内。

•	可查找所有满足某一条件或者满足另一条件的记录。例如，可查找所有供应奶酪的供应商的记录，或者查找所有挪威的供应商，不管其所供应的商品是什么。为选择上述的记录，应在条件窗格内输入两组条件。首先应在“条件字段”下拉列表框内单击“Country”字段，再在“值”编辑框内输入“Norway”。然后应在下一个“条件字段”下拉列表框内单击“Category”字段，再在相应的“值”编辑框内输入“=Dairy”。

•	可查找所有同时满足多个条件的记录。例如，可查找所有供应奶酪的挪威和意大利供应商的记录。为选择上述的记录，应在条件窗格内输入两组条件。首先应在“条件字段”下拉列表框内单击“Country”字段，再在“值”编辑框内输入“Norway Or Italy”。然后应在下一个“条件字段”下拉列表框内单击“Category”字段，再在相应的“值”编辑框内输入“=Dairy”。

•	可查找不等于某一值的记录。例如，可查找所有美国之外的供应商的记录。为使用这一条件，应在“条件字段”下拉列表框内单击“Phone”字段，再在“值”编辑框内输入“Not USA”。

•	可查找那些包含不完整的值或缺失值的记录。例如，可查找所有记录中没有主管人姓名的雇员的记录。为使用这一条件，应在“条件字段”下拉列表框内单击“Reports_To”字段，再在“值”编辑框内输入“Is Null”。

•	可查找包含若干值中任一值的记录。例如，可查找所有德国、法国或美国的供应商的记录。为使用这一条件，应在“条件字段”下拉列表框内单击“Country”字段，再在“值”编辑框内输入“Germany Or France Or USA”。


用条件指定检索哪些记录

1	单击“显示/隐藏条件” [image] 按钮。

此时 Microsoft Query 将显示“条件”窗格。

2	在条件窗格内，单击“条件字段”行内的第一个单元格，再在下拉列表框内单击想要应用条件的字段。

如果查询中使用了若干包含同名字段的表，就应确认此时单击选定的字段来自正确的表。

3	在“值”行内，单击“条件字段”行内选定字段正下方的单元格。

4	键入希望 Microsoft Query 用于选择记录的条件，然后按 ENTER 键。

操作方法

5	如果此时还未完成操作，可继续添加希望出现在结果集中的字段。

操作方法

如果要显示其它表中的字段，就应在查询中将那些表添加到“表”窗格内。若想查阅有关添加表的详细内容，请单击 [image] 。

注释

•	可向条件窗格内添加另外的条件以进一步限制结果集。例如，可查找所有供应奶酪的挪威和意大利供应商的记录。为选择上述的记录，应在条件窗格内输入两组条件。首先应在“条件字段”下拉列表框内单击“Country”字段，再在“值”编辑框内输入“Norway Or Italy”。然后应在下一个“条件字段”下拉列表框内单击“Category”字段，再在相应的“值”编辑框内输入“=Dairy”。

•	如果想要用于条件的值已出现在结果集中，就可将其复制到条件窗格内。在结果集中，单击想要复制的值，再单击“编辑”菜单中的“复制”命令，然后单击“值”行内要粘贴该值的位置。再单击“编辑”菜单中的“粘贴”命令。

•	为避免长时间地等待返回每个字段中的数据，可等到向结果集添加完所有的字段之后再检索数据。如果要这样做，就请确认未按下“自动查询” [image] 按钮。当准备好运行查询以后，可单击“立即查询” [image] 按钮。

•	如果查询时检索数据花费的时间过长，可按 ESC 键取消该查询。


检索与某一特定值相匹配的记录

1	请确认按下了“自动查询” [image] 按钮。

2	将想要指定条件的字段添加到“数据”窗格内。

操作方法

例如，如果要检索“Country”字段中包含“France”的记录，就应将“Country”字段添加到数据窗格内。

3	在结果集中，单击包含要匹配的值的单元格。

4	单击“条件等式” [image] 按钮。


删除条件以恢复完整的结果集

如果查询中包含许多记录，可等到删除了所有的条件后再更新结果集以节省时间。如果要这样做，就应确认未按下“自动查询” [image] 按钮。

1	在“条件”窗格内，单击包含要删除的条件的列的列标题。

2	按 DELETE 键。

对每一组要删除的条件重复第 1 步和第 2 步。

如果要同时删除所有条件，单击“条件”菜单中的“删除所有条件”命令。

3	完成了对条件的删除操作后，单击“立即查询” [image] 按钮以恢复完整的结果集。


表达式示例

所谓表达式就是指由运算符、函数、字段名和常量组合而成的算式。

可将表达式用作条件以选择要检索的记录。如果要在“条件”窗格内使用表达式，就应在“条件字段”下拉列表框内选择要求值的字段，再在“值”编辑框内键入所需的运算符和值。选择条件字段时，应确认所用的字段来自正确的表。例如，如果要查找某一特定国家的所有供应商，应从“Supplier”表中选择“Country”字段，而不是从“Customer”表中选择。若要查阅有关条件的详细内容，请单击 [image] 。

请选择：

使用算术运算符的表达式示例

使用比较运算符的表达式示例

使用逻辑运算符的表达式示例

使用其它类型的运算符的表达式示例


使用算术运算符的表达式示例

算术运算符执行基本的数学运算，诸如加、减、乘、除等，并得出数字结果。可在“条件”窗格或计算字段内的表达式中使用算术运算符。

算术 运算符	含义	示例	语法
+ （加号）	加	某客户当付的款项总额	Order_Amt+Freight
� （减号）	减	订货总价格，折扣计算在内	Order_Amt-Discount
* （星号）	乘	某一特定产品的订货总额	Unit_Price*Quantity
/ （正斜杠）	除	单价	Order_Amt/Quantity


使用比较运算符的表达式示例

在用于选择记录和限制结果集的条件中的表达式内可使用比较运算符。

比较 运算符	含义	示例	在“条件字段” 列表框内， 单击	在“值” 编辑框内， 键入
= （等号）	等于	查找德国客户的记录	Country	=Germany
<> （不等号）	不等于	查找美国之外的供应商的记录	Country	<>USA
> （大于号）	大于	查找某一特定日期之后的订货记录	Order_Date	>6/30/97
< （小于号）	小于	查找某一特定日期之前的订货记录	Order_Date	<6/30/97
>= （大于或等于号）	大于或等于	查找某一特定日期及该日期之后的订货记录	Order_Date	>=6/30/97
<= （小于或等于号）	小于或等于	查找某一特定日期及该日期之前的订货记录	Order_Date	<=6/30/97


使用逻辑运算符的表达式示例

逻辑运算符用于比较两个值。

逻辑 运算符	含义	示例	在“条件字段” 列表框内， 单击	在“值” 编辑框内， 键入
And	对结果集中的记录，此条件和另一条件在同一字段内必须同时满足。	查找某一特定日期范围内的订货记录	Order_Date	>6/5/97 And <6/23/97
Or	对结果集中的记录，此条件或者另一条件必须满足。	查找两个地方之一的供应商的记录	Country	USA Or Brazil
Not	结果集中的记录必须不满足此条件。	查找不在某一特定国家的供应商的记录	Country	Not Canada


使用其它类型的运算符的表达式示例

下表所列出的运算符，可用于选择某一范围内的值，查找若干值中的任一值，判断某一记录在指定字段内是否包含有效值，或者用通配符查找记录。

运算符	含义	示例	在“条件字段” 列表框内， 单击	在“值” 编辑框内， 键入
Between	显示介于两个上下限值范围内的值，包括这两个上下限值	查找订货量在 1,000 美元到 3,000 美元之间的记录	Order_Amt	Between 1000 And 3000
In	判断某值是否等于某清单内的任一值	查找波特兰港、西雅图和丹佛的客户记录	City	In(�Portland�, �Seattle�, �Denver�)
Is Null	判断记录的指定字段内是否不包含有效值	查找没有主管人姓名数据的雇员的记录。	Reports_To	Is Null
Is Not Null	判断记录的指定字段内是否包含有效值	查找有主管人姓名数据的雇员的记录。	Reports_To	Is Not Null
Like	可将 Like 和通配符 % 用于比较值	查找姓以“Sm”开头（例如“Smith”和“Small”）的雇员的记录	Last_Name	Like �Sm%�


创建计算字段

可创建名为计算字段的字段，以显示指定的算式的结果。可键入自定义的表达式以创建计算字段，所谓表达式就是指由运算符、函数、字段名和常量组合而成的算式。也可使用内置函数在字段内计算汇总。

请选择：

使用表达式创建计算字段

使用内置函数创建计算字段


使用表达式创建计算字段

1	在“数据”窗格内，单击空白的列标。

2	键入算式的表达式，再按 ENTER 键。不要将等号（=）放在表达式的开始。

例如，如果雇员收到了相当于他们薪水的 15% 的佣金，可将所有雇员的薪水相加，再将所得的和乘以 0.15 ，就得到了佣金的总额。

若要查阅使用算术运算符的表达式的示例，请单击 [image] 。


使用内置函数创建计算字段

1	将含有要汇总的值的字段添加到查询中。

操作方法

2	单击要汇总的字段内的任意位置，再单击“循环改变总计方式” [image] 按钮。

3	继续单击“循环改变总计方式”按钮直至 Microsoft Query 显示所需的汇总类型。

每次单击“循环改变总计方式”按钮时，Microsoft Query 都将计算并显示不同类型的汇总（所用的函数显示在列标内）。如果要查阅可用于在计算字段内创建汇总的函数的说明，请单击 [image] 。

4	选定了所需汇总函数的类型之后，单击“立即查询” [image] 按钮，以显示计算字段的结果。

注释

•	如果要删除字段中的算式，可单击“循环改变总计方式”按钮直至列标题内出现原来的字段名。

•	如果查询中包含许多记录，可等到选定了所需的函数后再显示计算字段的结果，以节省时间。如果要这样做，就应确认未按下“自动查询” [image] 按钮。


可在计算字段中使用的函数

函数通过计算或其它操作返回所得的结果值。例如，SUM 函数返回两个或多个值的和。Microsoft Query 支持下列函数。对于某一数据源，事实上可用的函数类型依赖于该数据源所用的 ODBC 驱动程序。如果要查看数据源有哪些函数可用，可单击某一数字字段，再单击“循环改变总计方式” [image] 按钮。

要返回的值为	可用函数
字段内某一组值的平均值	AVG
记录的总个数	COUNT
字段内某一组值的最大值	MAX
字段内某一组值的最小值	MIN
字段内某一组值的和	SUM


保存查询

如果要向 Microsoft Excel 返回数据，就不必保存查询。当需要保留格式，或者希望稍后再使用指定的查询，或者要将该查询用于另一工作簿中时，才有必要保存查询。如果要查阅有关向 Microsoft Excel 返回数据的详细内容，请单击 [image] 。

1	单击“保存文件” [image] 按钮。

2	在“文件名”编辑框内，键入所需的文件名。

3	在“保存类型”下拉列表框内，Microsoft Query 自动选中了“查询文件 (*.dqy)”。如果希望在早版本的 Microsoft Excel 或 Microsoft Query 中使用该查询，请在此处选择“查询文件 (*.qry)”。

参数型查询只能保存为“*.dqy”格式，且不能用于早版本的 Microsoft Excel 或 Microsoft Query 中。

4	在“存放位置”列表框内，单击要存放该查询的文件夹。

5	单击“保存”按钮。

注释

•	保存查询文件时，Microsoft Query 并不保存显示在“数据”窗格内的当前结果集。在显示“另存为”对话框之前，结果集将被自动更新，即便未按下“自动查询” [image] 按钮也是如此。

•	如果将查询保存于默认位置，那么当在 Microsoft Query 中打开新查询或在 Microsoft Excel 中选择“获取外部数据”命令时，该查询的文件名将出现在“查询”标签上。


运行、查看或编辑 SQL 命令、SQL 过程或 SQL 语句

如果熟悉结构化查询语言（SQL），就可以使用 SQL 编辑查询的 SQL SELECT 语句。有关 SQL 的详细内容，请参阅所用数据库的文档。

1	创建新查询。不要向 Microsoft Excel 返回所得结果。

操作方法

2	单击“显示 SQL” [image] 按钮。

此时 Microsoft Query 将显示“SQL”对话框，该对话框内包含相应于指定查询的 SQL SELECT 语句。

3	键入要对 SQL 语句所作的修改，然后单击“确定”按钮。

如果要在“SQL 语句”编辑框内添加新行，可按 CTRL+ENTER 键。

注释

•	如果要修改或替换 SQL 语句，请使用 Microsoft Query 所使用的 SQL 语法或数据源所支持的 SQL 语法。Microsoft Query 将试图解释用户所用的语法，并将显示查询设计及其结果集。

•	即使因 Microsoft Query 无法解释用户所用的 SQL 语法的一部分而导致其无法显示查询设计，Microsoft Query 仍将显示结果集。不过，在这种情况下，用户就只能修改结果集的格式，例如显示字体和列宽。用户将不能编辑数据，并且只能在“SQL”对话框内对查询的定义作出修改（例如添加或删除字段）。


执行 SQL 语句或过程

如果熟悉结构化查询语言（SQL），就可用 SQL 执行 SQL SELECT 语句。有关 SQL 的详细内容，请参阅所用数据库的文档。

1	在“文件”菜单中单击“执行 SQL”命令。

如果要在其它数据源的表上执行 SQL 语句，可单击“数据源”按钮，再单击所需的数据源，然后单击“确定”。此处可指定新的数据源。

操作方法

2	在“SQL 语句”编辑框内，键入要运行的 SQL 语句。

如果要运行现存的 SQL 语句，单击“打开”按钮，选择所需的 SQL 文件，再单击“打开”按钮。

如果要运行存放在外部数据库的 SQL 过程，请单击“过程”，然后在“查询”框中选择所需过程，再单击“粘贴”按钮，将其复制到“SQL 语句”框中。

3	单击“执行”按钮。

此时 Microsoft Query 将运行该 SQL 语句。如果该查询检索数据花费的时间过长，可按 ESC 键取消该查询。

可单击“保存”按钮保存该 SQL 语句。

注释

•	如果要修改或替换 SQL 语句，请使用 Microsoft Query 所使用的 SQL 语法或数据源所支持的 SQL 语法。Microsoft Query 将试图解释用户所用的语法，并将显示查询设计及其结果集。

•	即使因 Microsoft Query 无法解释用户所用的 SQL 语法的一部分而导致其无法显示查询设计，Microsoft Query 仍将显示结果集。不过，在这种情况下，用户就只能修改结果集的格式，例如显示字体和列宽。用户将不能编辑数据，并且只能在“SQL”对话框内对查询的定义作出修改（例如添加或删除字段）。

•	如果该查询返回若干结果集，Microsoft Query 将其中的第一个结果集显示在“数据”窗格内，而不显示其它的结果集。

•	如果查询运行成功，但该查询不返回结果集，Microsoft Query 将显示消息，指出该语句已成功地运行完毕。如果该查询影响了下层表中的行，此时显示的消息还将指出受影响的行数。

•	如果查询未运行成功，Microsoft Query 将显示相应于所出现的问题的 SQL 错误消息。此时单击“确定”按钮可显示“执行 SQL”对话框并修正错误语句。


在查询中对记录排序

1	请确认未按下“自动查询” [image] 按钮。

2	在结果集中单击要排序的字段。

3	如果要以升序的排序顺序排列记录，请单击“升序排序” [image] 按钮。

如果要以降序的排序顺序排列记录，请单击“降序排序” [image] 按钮。

注释

•	如果要同时对若干列进行排序，应首先将这些列在“数据”窗格内按排序的次序从左至右调整好。按下鼠标在列标中拖曳，可选定要排序的列，然后再单击“升序排序”按钮或“降序排序”按钮。

•	如果要将记录恢复到原来的顺序，单击“记录”菜单中的“排序”命令。然后在“查询中的排序”列表框内，单击要恢复原来顺序的列，再单击“删除”按钮。

•	完成对记录的排序之后，如果改变了结果集中列的顺序，排序的结果将不受影响。


在查询中查看不同的记录

1	在“格式”菜单中单击“显示列”命令。

2	如果要临时地在“数据”窗格内隐藏某一列，可在此处单击该列，再单击“隐藏”按钮。

如果要重新显示某一列，单击该列，再单击“显示”按钮即可。

注释   向 Microsoft Excel 返回结果集时，隐藏的列也包括在结果集中。如果不希望将隐藏列返回到 Microsoft Excel 中，就应在返回结果集之前，从数据窗格内删除该列。


用动态数据交换（DDE）与 Microsoft Query 通信

Microsoft Query 支持动态数据交换（DDE），动态数据交换是一种进程间的通信手段，可用该手段在两个程序之间交换数据。可以在 Visual Basic for Applications 中使用 DDE 方法，以便在 Microsoft Query 和其它程序（如 Microsoft Excel）之间通信并来回传送数据。

请选择：

使用 DDE

打开 DDE 通道

执行 DDE 命令

DDE 命令

获取状态信息和其它信息

检索数据

使 Microsoft Query 退出 DDE

关闭 DDE 通道

与其它程序共用 Microsoft Query


使用 DDE

两个程序可通过在 DDE 通道上进行 DDE 对话的方式，来相互交换信息。一个程序可以与 Microsoft Query 进行多个 DDE 对话，但每个对话都必须占用单独的通道。

初始化 DDE 对话的程序称为目标程序；对目标程序进行应答的程序称为源程序。在 DDE 对话中，Microsoft Query 总是源程序。这就是说，总是由其它程序初始化与 Microsoft Query 的 DDE 对话。

注释   并非所有的程序都支持 DDE。如果要了解某一程序是否支持 DDE，请参考该程序的文档。

DDE 通道

有两种类型的 DDE 通道：系统通道 和 查询通道。

在参与 DDE 对话的目标程序和 Microsoft Query 之间使用系统通道，可获取总体信息和与查询有关的信息。系统通道除提供关于查询的信息外，还可让用户检索到有关系统的信息，如当前所有的连接、所有打开的查询和目标程序的状态。

查询通道用于 DDE 对话的目标程序和 Microsoft Query 中的某一特定查询之间（如 Query1）。使用查询通道的前提是相应的查询窗口已通过系统通道打开。

DDE 如何运作

可用 DDE 对话和两个人之间的典型对话相类比。例如，在应聘的面试中，考官将向应聘者提出一系列面试的问题。考官（相当于目标程序）作好面试的准备工作（即初始化），然后请求应聘者（相当于源程序）提供信息，并将信息记录在一张纸（相当于工作表或文档）上。当然，应聘者也可能会向考官提出问题，从而形成双向的对话。

类似地，参与 DDE 对话的程序在相互之间来回地传递信息。例如，如果要使用 DDE 与 Microsoft Query 进行通信，Visual Basic for Applications 过程可执行下述步骤：

1	该过程用 DDEInitiate 方法打开 DDE 通道。

2	可选地，该过程可向 Microsoft Query 发送一些信息，如有效的数据源或当前的连接是哪些。

3	该过程激活 Microsoft Query。这一步骤使得 Microsoft Query 能够接收命令。此时，用户或该过程就可以建立或修改查询了。该过程可用 DDEExecute 方法直接向 Microsoft Query 发送命令。

4	用户或该过程退出 Microsoft Query 后，控制将返回到目标程序。该过程可用 DDERequest 方法检索查询的数据，并将其返回到目标程序，或者将数据发送到 Microsoft Query。

5	该过程用 DDETerminate 方法关闭通道。

有关 Visual Basic for Applications 中特定的 DDE 方法的细节，请参阅 Visual Basic 帮助。


打开 DDE 通道

VB 过程应当用 DDEInitiate 方法打开 DDE 通道。DDEInitiate 方法有两个参数：源程序的名称和 DDE 对话 的“话题”（称为主题）。Microsoft Query 的程序名是“MSQuery”。

Microsoft Query 的主题罗列在下表中。

主题	说明
query_window_name	某一打开的查询窗口的名称。仅当 Microsoft Query 正在运行并且已打开了指定的窗口，才能指定本参数。
System	总体性的主题，使目标程序连接到 Microsoft Query 本身，而不只是某一查询窗口、某一个文件或某一条 SQL SELECT 语句。
当 Microsoft Query 收到一个 DDE 对话的请求，且 Microsoft Query 能够识别该请求的主题以后，它就将作出应答，并打开通道。DDEInitiate 方法将返回一个 DDE 通道号，该通道号可赋给某一变量，并可用于该通道的后续操作中。

如果要在单个通道中打开多个窗口，可用 System 主题。用 System 主题打开 DDE 通道后，只能激活该通道上已打开的窗口。


执行 DDE 命令

可用 DDEExecute 方法向 Microsoft Query 发送命令。这些命令是特定于 Microsoft Query 的，有些命令相应于 Microsoft Query 的菜单命令，而有些命令则不是。例如，Open 命令和 SaveAs 命令与 Microsoft Query 中的等价菜单命令执行同样的功能，而 ODBCLogon 命令和 UserControl 命令则没有等价的菜单命令。如果要查阅有效的菜单命令的清单，请单击 [image] 。

DDEExecute 语句有两个参数。

参数	说明
channel	由 DDEInitiate 方法所返回的 DDE 通道号。
command	要发送到 Microsoft Query  的命令。
如果要让用户自己在 Microsoft Query 中建立查询，可执行 UserControl 命令。下例用“My Exit Command”命令替换了“文件”菜单中的“退出”命令。

DDEExecute Chan,"[UserControl('&My Exit Command',3,True)]"

上例中，DDE 通道号已被预先赋给了变量 Chan，而发送到 Microsoft Query 的命令是 UserControl。请注意，UserControl 命令及其参数应当用双引号（" "）和方括号（[ ]）括起来。


DDE 命令

请选择：

Activate

AddParameters

AllowEdit

BuildODBC

BuildSQL

Close

Command

EnableParameters

Exit

Fetch and Fetch.Advise

Fetch.Unadvise

Logoff

Logon

LogonNow

ODBCLogon

Open

QueryNow

SaveAs

SetParameterName

SetQueryName

SetWindowState

UserControl

UserControl2

ViewPane


获取状态信息和其它信息

一旦打开了与 Microsoft Query 之间的 DDE 通道以后，就可以用 DDERequest 方法返回结果集或其它信息。

DDERequest 方法有两个参数。

参数	说明
channel	由 DDEInitiate 方法所返回的 DDE 通道号。
request_item	要返回的数据。该数据可以是查询窗口中的字段或字段区域的内容，或者其它类型的信息，如查询窗口中记录的数目。
请求项在查询通道和系统通道上都可以使用。在查询通道上，只能返回有关查询的信息，如行数或列数，或者查询的定义。而在系统通道上，则可以返回有关 Microsoft Query 的总体信息，如当前的连接、主题名称和程序状态，以及特定于活动查询的信息。

可用于查询通道的请求项或系统通道上的活动查询的请求项罗列在下表中。

请求项	所返回的信息
ColumnTitles	列标题的数组。列标题与字段名称相同，除非用户在 Microsoft Query 中修改了列标题。
ConnectionString	由构成活动查询窗口的连接字符串的各段所组成的数组（每个段最长可达 255 个字符）。如果查询是用文件 DSN 创建的，本请求项将返回无 DSN 的连接字符串。
ConnectionString/n	由构成活动查询窗口的连接字符串的各段所组成的数组（每个段最长可达 n 个字符）。如果查询是用文件 DSN 创建的，本请求项将返回无 DSN 的连接字符串。
DataSourceName	活动查询所用的数据源的名称（DSN）。
ErrorText	如果最近执行的 SQL 语句产生了错误，本请求项将返回该错误的说明文字。可多次重复使用本请求项，以获得所产生的所有错误的信息。当所有的错误信息都检索完之后，本请求项将返回空字符串。如果最近执行的 SQL 语句没有引发错误，本请求项将返回 null 字符串，即便先前所执行的 SQL 语句曾引发了错误也是如此。
FieldDef	返回数组，该数组中的值说明了查询窗口中各列（即各字段）的表达式和数据类型。数组中的每一行说明查询中的一个字段。该数组各列的数据如下：字段名，字段的 Q+E 数据类型，字段宽度，字段精度，以及字段的 SQL 数据类型。
GetUniqueItems	由查询结果的给定列中相互唯一的数据项所构成的数组。实际使用本请求项时，必须在“GetUniqueItems”后面附加以零为最小编号的列编号（例如，第二列中相互唯一的数据项用“GetUniqueItems1”返回）。如果某一列未包含在查询中，就不能请求该列内的相互唯一的数据项。 本请求项所返回的值，等同于对被请求的列使用 SELECT DISTINCT 语句所得的结果，并且使用该语句时，所有的连接从句和条件从句都起作用，不包括带参数的条件从句。
NameSeparator	用作 ODBC 标识符名称的分隔符的单个字符。
NumCols	查询中的列（字段）数。
NumRows	查询中的行（记录）数。
ODBCSQLStatement	由构成查询的 ODBC SQL 语句的各 SQL 段所组成的数组（每个段最长可达 255 个字符）。用这一字符串，可向 ODBC 直接发送并执行一条 ODBC SQL 语句，而不必经由 Microsoft Query。
ODBCSQLStatement/n	由构成查询的 ODBC SQL 语句的各 SQL 段所组成的数组（每个段最长可达 n 个字符）。可用本请求项将一条 ODBC SQL 语句存储在若干较小的段内。
ParameterNames	查询中的各参数组成的数组。如果查询中不包含参数，将返回空数组。本请求项可用在任意时候，即使禁用了查询的参数也可以使用。
Query	查询的名称。
QueryDefinition	由构成查询的定义（即一条 SQL 语句，由 Microsoft Query 所定义）的各段所组成的数组（每个段最长可达 255 个字符）。可用本请求项返回并保存查询定义，以便用于随后的查询中。
QueryDefinition/n	由构成查询的定义（即一条 SQL 语句，由 Microsoft Query 所定义）的各段所组成的数组（每个段最长可达 n 个字符）。
Recest	每次所能检索的记录数目的粗略估计。
TierType	表示数据源类型的单个数码：1 表示只能包含一张表的文件；2 表示能包含一张或多张表的数据库文件；3 表示数据不能浏览。如果程序需要提供能够浏览硬盘上的数据的“打开”对话框，就要使用本请求项。
在系统通道上使用上述请求项时，所返回的是有关在 DDE 对话中最近所使用的查询窗口的信息。

对于系统通道，出上述请求项外，和可以使用下列请求项。

请求项	所返回的信息
Sources	当前所有的数据源连接（仅返回 DSN）。
Logon	能够连接到的所有远程数据库（注册表中的 DSN 项）。
Logoff	当前所连接的所有远程数据库（仅返回 DSN）。
Tables/source/user/database	指定的 DSN 连接、用户和数据库的所有表。请注意，source 必须是有效的 DSN。
Users/source/database	指定的 DSN 连接和数据库的所有用户。请注意，source 必须是有效的 DSN。
Database/source	指定的 DSN 连接的所有数据库。请注意，source 必须是有效的 DSN。
Username/source/database	指定的 DSN 连接和数据库的用户名。请注意，source 必须是有效的 DSN。
Topics	在系统通道上所打开的各主题的名称，包括“System”。
Status	程序的状态，可以是“就绪”或“忙”。“就绪”表示程序可以与 Microsoft Query 进行 DDE 对话。“忙”表示 Microsoft Query 还不能进行 DDE 对话。
下例将请求项 NumRows 所返回的值插入到 Microsoft Excel 中的单元格“A10”中。

ActiveWorksheet.Range("A10").Value = DDERequest(chan, "NumRows")


检索数据

与 DDERequest 命令将数据返回到程序相比，Fetch 命令和 Fetch.Advise 命令的值得一提之处终于，它们将数据从 Microsoft Query 直接送到工作表或文档中。Fetch 命令和 Fetch.Advise 命令用作 DDEExecute 方法的命令参数。

Fetch.Advise 命令与 Fetch 命令类似，但由 Fetch.Advise 命令所打开的通道，在第一次数据检索完成之后，并不立即关闭。Microsoft Query 可继续对数据进行修改，直到原 DDE 通道关闭或 Microsoft Query 收到 Fetch.Unadvise 命令。


使 Microsoft Query 退出 DDE

如果要退出 Microsoft Query，程序可以使用 Exit 命令，而不必令用户单击“文件”菜单中的“退出”命令。

命令	说明
Exit (False)	仅当其它通道上不存在打开的查询时，才退出 Microsoft Query。
Exit (True)	不管有无其它打开的查询，都退出 Microsoft Query。


关闭 DDE 通道

可用 DDETerminate 方法关闭 DDE 通道。该方法仅有一个参数，即要关闭的 DDE 通道的通道号。使用 DDETerminate 方法时，相应通道上所有打开的查询都将自动关闭，并且将从所有连接的数据源上注销。

如果给定的通道号无效，将返回错误。


与其它程序共用 Microsoft Query

典型地，其它程序用 Microsoft Query 完成三种主要任务：

•	创建新的查询

•	更新已有的数据

•	修改查询的定义或数据

Microsoft Query 用作用户的数据查询工具

使用 DDE，可使 Microsoft Query 执行数据检索工具的功能。当宏或程序打开一个 DDE 通道后，就可以激活 Microsoft Query，并指定用什么命令来替换“文件”菜单内的“退出”命令，指定 Microsoft Query 处于什么状态（最小化（仅用于 Windows）、最大化或还原），以及是否要显示一系列对话框。

然后用户就可以创建、打开或编辑查询，就像 Microsoft Query 作为独立应用程序运行一样。用户建立完查询后，就可以单击自定义的“退出”命令，或单击工具栏上的“退出”按钮。

一旦控制返回到目标程序（文档、工作表或其它对象），就可以向 Microsoft Query 请求数据了。例如，用户可能会请求下述数据：查询中的行数和列数，定义查询的 SQL 字符串，数据源的连接字符串，数据源的名称等。数据可在 DDE 通道关闭和宏或程序运行结束之前返回到目标程序。

更新检索到的数据

执行完查询并返回了结果集后，可能还需要在稍后用数据源中的内容对数据进行更新。使用 DDE，可不必由用户输入就更新数据。程序可向 Microsoft Query 发送一条 SQL 语句，该语句可执行查询并将结果集返回到目标程序。

修改查询的定义或数据

程序使用 Microsoft Query 的另一个方式是，让用户修改 Microsoft Query 中已有查询的定义，或编辑数据源中的数据。

为达到这一目的，程序首先应打开 DDE 通道，连接到数据源，然后向 Microsoft Query 发送 SQL 字符串（通过先前执行的查询所保存的）以建立新查询。该程序打开新查询后，就开始用户的控制，从而用户就可以根据情况修改查询或编辑数据。用户退出 Microsoft Query 后，数据将返回到程序，新建查询的定义将保存，而查询将关闭。

例如，Word 用户可以选择自定义的命令“获取销售数字”，以启动相应的宏。该宏然后就启动 Microsoft Query，并建立查询，然后将销售数据返回到 Word 文档。而对这一切执行细节，用户都可以不知情。


Q+E 数据类型

值	类型
1	SQL_CHAR
2	SQL_BINARY, SQL_VARBINARY, SQL_LONGVARBINARY, SQL_LONGVARCHAR, SQL_VARCHAR
3	SQL_NUMERIC, SQL_DECIMAL
4	SQL_INTEGER, SQL_BIGINT
5	SQL_BIT, SQL_TINYINT, SQL_SMALLINT
6	SQL_FLOAT
7	SQL_REAL, SQL_DOUBLE
8	SQL_TIME, SQL_DATE, SQL_TIMESTAMP


SQL 数据类型

值	类型
0	SQL_UNKNOWN_TYPE
1	SQL_CHAR
2	SQL_NUMERIC
3	SQL_DECIMAL
4	SQL_INTEGER
5	SQL_SMALLINT
6	SQL_FLOAT
7	SQL_REAL
8	SQL_DOUBLE
9	SQL_DATETIME (ODBC 3.0 only)
12	SQL_VARCHAR


系统通道

在目标程序和 Microsoft Query 之间的 DDE 对话中使用系统通道，可获取总体信息和特定于查询的信息。系统通道除提供关于查询的信息外，还可让用户检索到有关系统的信息，如当前所有的连接、所有打开的查询和目标程序的状态。


查询通道

查询通道用于 DDE 对话的目标程序和 Microsoft Query 中的某一特定查询之间（如 Query1）。使用查询通道的前提是相应的查询窗口已通过系统通道打开。


DDE 对话

两个应用程序之间通过动态数据交换（DDE）进行通信和数据交换的交互过程。在 DDE 对话中，目标程序对关于特定主题的交互过程进行初始化，而源程序则作出应答。


基于当前数据窗格中所用的字体大小，以磅为单位键入行高。行高的改动随查询一起保存。如果使用了自定义的行高，并修改了字体，就必须手工调整行高以适应字体大小。如果向 Microsoft Excel 或其它父应用程序返回数据，该父程序中的结果集将不使用此处所设置的选项。


选中此复选框可应用默认行高。行高的改动随查询一起保存。如果使用了标准（默认）行高，那么改动字体时，Microsoft Query 将自动调整行高。


显示要创建索引的表的名称。


键入要为该索引指定的名称。（当要删除该索引时，就在“DROP INDEX” SQL 语句中使用此处指定的名称。）对索引名称的要求随数据源的不同而不同。有关的详细内容请参阅 ODBC 数据源的文档。


指定要创建索引的一个或多个字段，方法如下：从下拉列表内选择表中的一个字段名；输入一个或多个字段名，用逗号隔开（例如“LAST_NAME,FIRST_NAME”）；或者输入表达式作为计算字段（例如“PRICE*QUANTITY”）。


向表中的一个或多个指定字段添加索引。


如果选中此复选框，就表示创建了该索引的一个或多个字段中的值，唯一地标识表中的每个记录。


关闭此对话框，并保存所作的修改。


关闭此对话框，但不保存所作的修改。


输入另外的数据源名称，以执行查询的 SQL 语句，或使用框内显示的现有数据源。


单击“新建”按钮可选择新的 ODBC 驱动程序，用以执行 SQL 语句。


删除选定的数据源，但并不从系统中删除 ODBC 驱动程序。如果当前某一打开的查询正在使用该数据源，Microsoft Query 将不删除该数据源。


显示选项，这些选项决定使用表（而非用作表的文件）时哪些表显示在“添加表”对话框内。此处所设置的选项，将成为下次用同一数据源创建查询时的默认选项。


在“添加表”对话框内显示下层数据库（或数据库等价物）中所有的表。“表”复选框的默认设置为选中状态。


向“添加表”对话框内添加数据库中表的替代视图的名称。如果数据库中不存在替代视图，“视图”选项无效。在 SQL 中，所谓视图是指一种查看一张或多张表中的数据的替代方式。在 Microsoft Access 中，视图就是数据库中的查询。


向“添加表”对话框内添加系统表（包含数据库的结构信息的表）的名称。


向“添加表”对话框内添加同义词（为表定义的别名，该别名存储于数据库中），该同义词是为数据库中的表创建的。如果数据库中不存在同义词，“同义词”选项无效。


更新查询，以便在“添加表”对话框内显示最近的表的清单。


新建查询

创建新的查询。显示“选择数据源”对话框，在该对话框内，可选择用于新查询的数据源，或者选择要修改的已有查询。


打开查询

打开已有的查询。显示“打开查询”对话框，在该对话框内，可打开已有的查询进行查看或编辑。当单击“执行 SQL”对话框内的“打开”按钮时，也将出现“打开查询”对话框。在该对话框内，可打开 SQL 文件，查看、编辑或运行其中的 SQL 语句。


保存文件

保存查询，以当前的版本替代先前的版本。如果此前还未保存过当前的查询，Microsoft Query 将显示“另存为”对话框。


查看相应的 SQL 语句

显示与查询窗口中的查询相应的 SQL SELECT 语句，从而用户可以查看或编辑该语句。有关数据源所支持的 SQL 语法的细节，请参阅 SQL 文档或咨询数据库管理员。如果要查阅有关在 Microsoft Query 中创建、编辑或查看 SQL 语句的详细内容，请单击 [image] 。


显示/隐藏表

显示或隐藏“表”窗格。


显示/隐藏条件

显示或隐藏“条件”窗格。创建查询时，Microsoft Query 并不自动显示“条件”窗格。通过单击“条件”菜单内的“添加条件”命令，或通过单击“显示/隐藏条件”按钮来指定条件时，“条件”窗格才会首次出现。


添加表

显示“添加表”对话框，该对话框可用于向当前查询中的“表”窗格添加一张或若干张表。必须显示“表”窗格以查看表的字段列表。如果看不到所添加的表，单击“添加表”可显示“表”窗格。


相等条件

选择与活动单元格的值相等的记录。在查询的结果集内所选定的单元格的值，将成为“条件”窗格内条件的值。


总计

根据字段内所存储的数据的类型计算值。如果要修改所做计算的类型，请在“数据”窗格内双击字段的标题，然后在“编辑列”对话框内，选中要对选定字段所进行的计算的类型。


升序排序

以升序对记录进行排序，即依据指定的字段，从字母表的开始字母、最小的数字或最早的日期开始排序。如果要依据若干字段来排序，请依次选定要用于排序的字段，然后按住 CTRL 键并单击排序按钮。


降序排序

以降序对记录进行排序，即依据指定的字段，从字母表的结尾字母、最大的数字或最晚的日期开始排序。如果要依据若干字段来排序，请依次选定要用于排序的字段，然后按住 CTRL 键并单击排序按钮。


立即查询

运行查询，并在“数据”窗格内显示最新的结果集。当“自动查询”按钮处于打开状态时，Microsoft Query 将在每次添加字段、指定条件或进行其它修改查询设计的操作时，都自动运行查询。当“自动查询”按钮处于关闭状态时，则只能在单击“立即查询”按钮时才能运行查询。


自动查询

打开或关闭“自动查询”特性。控制是否在每次更改查询的设计，如添加字段或指定新的条件时，都自动更新查询结果集。默认情况下，“自动查询”处于打开状态。


显示“选定值”对话框。从字段值的列表中选择用于条件的值。


显示活动表的名称。


选定数据源，该数据源中包含要操作的表。


显示“查看表的定义”对话框，该对话框内包含了选定表的定义。


显示“新表定义”对话框，该对话框内包含空白字段，可用于定义新表。


删除在“表”文本框内选定的表。

注意   单击“删除”按钮后，Microsoft Query 将提示用户，以确认是否确实要删除。此时如果单击“确定”按钮，Microsoft Query 将删除该表，以及相应的存储于下层数据库中的数据。一旦执行了此操作，就不能再用 Microsoft Query 进行恢复了。


显示“创建索引”对话框，用该对话框可在表中的一个或多个字段上创建索引。


显示“表选项”对话框，可用该对话框指定在“选定表”对话框内应列出哪些表。


键入要修改定义的表的名称，或从下拉列表内选择名称。


当需要更多的空间用于编辑或输入数据时，可用“缩放字段”对话框编辑字段单元格中的内容。单击“确定”按钮可在数据窗格内查看编辑好的数据。可能需要选中“记录”菜单中的“允许编辑”命令，以编辑字段。如果已向查询中添加了多个表，就不能再编辑字段。此选项并非对所有的数据源都有效。有关细节可咨询数据库管理员或查阅数据库文档。


双击“可用的表和列”列表框内的列，可将其包含到查询中。单击表名左边的加号，可显示相应表内的所有列。


单击“查询中用到的列”列表框内的某一列，再单击列表框右边的滚动按钮，可修改相应的列在结果集内的显示次序。


将整张表或表中的某一列移到“查询中用到的列”列表框内，以将其包含到查询中。如果“可用的表和列”列表框内没有显示所有的列，单击表名左边的加号，可显示相应表内的所有列。


从“查询中用到的列”列表框中删除选定的列。


可用滚动按钮查看“查询中用到的列”列表框内的其它表和列。


单击“立即预览”可预览在“查询中用到的列”列表框内所选定的列中的数据。


从“查询中用到的列”列表框中删除所有的列。


在“欲过滤的列”框内选择要筛选的列，然后在“只包含满足下列条件的行”框内选择用于筛选的运算符并指定筛选条件。单击“与”或“或”按钮以进一步筛选要让查询返回的数据。

在“查询向导”的这一步骤中不做任何修改而直接单击“下一步”按钮，将不进行筛选操作，而将数据源中的数据全部返回。


可用“只包含满足下列条件的行”下方的框选择筛选条件。可用“与”或“或”按钮联系若干条件，以创建更为复杂的筛选。单击“与”按钮表示两个条件都必须满足，而单击“或”按钮表示只需满足两个条件之一。


单击“保存查询”可运行查询，并将该查询添加到可用查询的列表中。当需要在 Microsoft Excel 或 Microsoft Query 中选择要运行的查询，或选择数据源时，将用到上述列表。应将查询的设计保存为“*.dqy”文件类型。


运行所设计的查询，并将结果集返回到 Microsoft Excel 或启动“查询向导”的程序中。


运行所设计的查询，并将结果集返回到 Microsoft Query。然后，在将数据返回到启动“查询向导”的程序中之前，可用 Microsoft Query 查看检索到的数据，并对查询进行其它修改。


在此列表框内选定用于对各行进行排序的列。如果要用若干列对结果集进行排序，此处所选定的列就作为第一个排序键或主排序列。

如果在“查询向导”的这一步骤中不作任何修改而直接单击“下一步”按钮，那么数据将保持从数据源检索时的顺序。


单击“升序”单选钮，则数据排序时，最小的数字、字母表的开始字母或最早的日期将置于排序结果的前面。

单击“降序”单选钮，则数据排序时，最大的数字、字母表的结尾字母或最晚的日期将置于排序结果的前面。空白字段总是排在最后。

如果在“查询向导”的这一步骤中不作任何修改而直接单击“下一步”按钮，那么数据将保持从数据源检索时的顺序。