Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 的用法 » 远程数据和批量操作 » 导入和导出数据 » 导出数据

 

使用 UNLOAD 语句导出数据

UNLOAD 语句类似于 OUTPUT 语句,因为这两个语句都将查询结果导出到文件中。但 UNLOAD 语句能以文本格式更高效地导出数据。使用 UNLOAD 语句导出时,数据库表中的每行在文件中占一行,各个值之间由逗号分隔符隔开。

可以在以下情况下使用 UNLOAD 语句卸载数据:

  • 希望在涉及性能问题时导出查询结果

  • 要以文本格式存储输出

  • 要将导出命令嵌入应用程序中

  • 将数据导出到客户端计算机上的文件

对数据库的影响

如果可以在使用 OUTPUT 语句、UNLOAD 语句或 UNLOAD TABLE 语句之间进行选择,则出于性能原因,请选择 UNLOAD TABLE 语句。

若要使用 UNLOAD 语句,用户必须拥有执行在 UNLOAD 语句中指定的 SELECT 子句所需的权限。

有关控制哪些用户可以使用 UNLOAD 语句的详细信息,请参见-gl 服务器选项

UNLOAD 语句在当前隔离级别上执行。

示例

使用 SQL Anywhere 示例数据库,可以通过执行以下命令将 Employees 表的子集卸载到名为 employee_data.csv 的文本文件中:

UNLOAD 
SELECT * FROM Employees 
WHERE State = 'GA'
TO 'employee_data.csv';

因为是由数据库服务器卸载结果集,所以 employee_data.csv 指定数据库服务器计算机上的文件。

另请参见