将表格或SQL请求执行结果到处到CSV文件。该文件使用UTF-8编码创建。
long DatabaseExport(
|
参数
database
[in] 在DatabaseOpen()中接收的数据库句柄。
table_or_sql
[in] 结果将被导出到指定文件的表格名称或SQL请求文本。
filename
[in] 用于数据导出的文件名。设置相对于MQL5\Files文件夹的路径。
标识
[in] 定义文件输出的标识组合。标识定义如下:
DATABASE_EXPORT_HEADER 显示包含字段名的字符串
DATABASE_EXPORT_INDEX 显示字符串索引
DATABASE_EXPORT_NO_BOM 没有在文件开始插入BOM标记(默认插入BOM)
DATABASE_EXPORT_CRLF 使用CRLF换行(默认为LF)
DATABASE_EXPORT_APPEND 将数据添加到现有文件的末尾(默认情况下,覆盖该文件)。如果文件不存在,则将被创建。
DATABASE_EXPORT_QUOTED_STRINGS 在双引号中显示字符串值。
DATABASE_EXPORT_COMMON_FOLDER - 在所有客户端的常规文件夹中创建CSV文件\Terminal\Common\File。
separator
[in] 数据分隔符。如果指定NULL,则将'\t'制表符用作分隔符。 空字符串""被认为是有效分隔符,但不能将获取的CSV文件读取为表格 它被认为是一组字符串。
返回值
返回导出条目的数量,或者在错误情况下返回负值。要获得错误代码,请使用GetLastError(),可能回应:
注意
如果请求结果被导出,则SQL请求应该以"SELECT" 或 "select"开始。换句话说,SQL请求不能改变数据库状态,否则DatabaseExport()失败并显示错误。
数据库字符串值可能包含转换字符('\r'或'\r\n' ),以及分隔符参数中设置的值分隔符。在这种情况下,请确保在'flags'参数中使用DATABASE_EXPORT_QUOTED_STRINGS标识。如果该标识已存在,则所有显示的字符串用双引号表示。如果一个字符串包含双引号,则用双层双引号代替。
另见