SQLRetrieveToFile 函数 - Microsoft Excel Visual Basic 2002 参考

返回介绍

SQLRetrieveToFile 函数

发布于 2019-08-07 字数 2663 浏览 838 评论 0

不要在“Xlodbc.xla”加载宏中使用 SQLRetrieveToFile 和其他 ODBC 函数,应该使用 Microsoft ActiveX 数据对象 (ADO) 库中的对象、方法和属性。


SQLRetrieveToFile 检索以前执行的查询所得的所有结果,并将这些结果保存于文件中。


调用本函数之前,必须先用 SQLOpen 函数建立连接,再用 SQLExecQuery 函数执行查询,从而准备好结果。


本函数包含在“Xlodbc.xla”加载宏中。使用本函数之前,必须使用“工具”菜单中的“引用”命令建立对该加载宏的引用。


SQLRetrieveToFile(ConnectionNum, Destination, ColNamesLogical, ColumnDelimiter)


ConnectionNum 必需。数据源的唯一连接标识,该连接标识由 SQLOpen 函数返回,并由 SQLExecQuery 函数用于查询数据。


如果 ConnectionNum 无效,则 SQLExecQuery 返回第 2015 号错误。


Destination 必需。指定用于放置结果的文件的路径和名称的字符串。如果该文件存在,其内容将为查询结果所取代。如果该文件不存在,SQLRetrieveToFile 创建和打开该文件,并将结果保存于其中。


文件中的数据格式与 Microsoft Excel.csv(逗号分隔值)文件格式兼容。


各列之间用 ColumnDelimiter 所指定的字符分隔,各行之间用回车符分隔。


如果无法打开由 Destination 指定的文件,SQLRetrieveToFile 返回第 2042 号错误。


ColNamesLogical 可选。如果为 True,则将列名作为结果的第一行返回。如果为 False 或省略本参数,则不返回列名。


ColumnDelimiter 可选。字符串,指定用于分隔每行中各元素的字符。例如,用“,”指定逗号分隔符,或用“;”指定分号分隔符。如果省略 ColumnDelimiter,则使用列表分隔符。


返回值


如果成功,SQLRetrieveToFile 返回查询结果,将其写入文件,然后返回写入文件中的行数。


如果 SQLRetrieveToFile 无法检索结果,则返回第 2042 号错误且不写入文件。


如果指定的连接中没有搁置的结果,则 SQLRetrieveToFile 返回第 2042 号错误。


说明


调用 SQLRetrieveToFile 之前,必须执行以下操作:


  1. 调用 SQLOpen 函数以建立与数据源的连接。

  2. SQLOpen 函数所返回的连接标识,调用 SQLExecQuery 函数向数据源发送查询。


示例


本示例在“NorthWind”数据库上执行查询。查询结果是当前已订货的产品列表,该结果以分隔文本的格式写入当前文件夹的“Output.txt”文件中。


databaseName = "Northwind"
queryString = _
"SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"
chan = SQLOpen("DSN=" & databaseName)
SQLExecQuery chan, queryString
SQLRetrieveToFile chan, "OUTPUT.TXT", True
SQLClose chan

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

目前还没有任何评论,快来抢沙发吧!