- DatabaseOpen
- DatabaseClose
- DatabaseImport
- DatabaseExport
- DatabasePrint
- DatabaseTableExists
- DatabaseExecute
- DatabasePrepare
- DatabaseReset
- DatabaseBind
- DatabaseBindArray
- DatabaseRead
- DatabaseReadBind
- DatabaseFinalize
- DatabaseTransactionBegin
- DatabaseTransactionCommit
- DatabaseTransactionRollback
- DatabaseColumnsCount
- DatabaseColumnName
- DatabaseColumnType
- DatabaseColumnSize
- DatabaseColumnText
- DatabaseColumnInteger
- DatabaseColumnLong
- DatabaseColumnDouble
- DatabaseColumnBlob
DatabaseExport
Exporta un recuadro o el resultado de la ejecución de una solicitud SQL a un archivo CSV. El archivo se crea en la codificación UTF-8.
long DatabaseExport(
|
Parámetros
database
[in] Manejador de base de datos recibido en DatabaseOpen().
table_or_sql
[in] Nombre del recuadro o solicitud SQL cuyos resultados serán exportados al archivo indicado.
filename
[in] Nombre del archivo para exportar los datos. La ruta se establece con respecto a la carpeta MQL5\Files.
flags
[in] Combinación de banderas de la enumeración ENUM_DATABASE_EXPORT_FLAGS.
separator
[in] Separador de datos. Si se indica NULL, se usará como separador el símbolo de tabulación '\t'. La línea vacía "" se considera un separador permitido, pero el archivo CSV obtenido no puede ser leído como recuadro, se tratará de un conjunto de líneas.
Valor retornado
Retorna el número de entradas exportadas o un valor negativo en caso de error. Para obtener el código del error, use GetLastError(), posibles respuestas:
- ERR_INTERNAL_ERROR (4001) error crítico del sistema de ejecución;
- ERR_INVALID_PARAMETER (4003) la ruta al archivo de la base de datos contiene una línea vacía o se ha establecido una combinación de banderas incompatible;
- ERR_NOT_ENOUGH_MEMORY (4004) - memoria insuficiente;
- ERR_FUNCTION_NOT_ALLOWED(4014) el pipe indicado no está permitido;
- ERR_PROGRAM_STOPPED(4022) la operación ha sido cancelada (el programa MQL se ha detenido);
- ERR_WRONG_FILENAME (5002) - nombre de archivo incorrecto;
- ERR_TOO_LONG_FILENAME (5003) - la ruta absoluta al archivo ha superado la longitud máxima;
- ERR_CANNOT_OPEN_FILE(5004) error de apertura del archivo para el registro;
- ERR_FILE_WRITEERROR(5026) error de escritura en el archivo;
- ERR_DATABASE_INTERNAL (5120) error interno en la base de datos;
- ERR_DATABASE_INVALID_HANDLE (5121) - manejador no válido de la base de datos;
- ERR_DATABASE_QUERY_PREPARE(5125) error al crear la solicitud;
- ERR_DATABASE_QUERY_NOT_READONLY se permite solo la solicitud de lectura.
Observación
Si se exportan los resultados de una solicitud, la solicitud SQL deberá comenzar con "SELECT" o "select". En otras palabras, una solicitud SQL no puede modificar la base de datos, en caso contrario, DatabaseExport() se finalizará con error.
Los valores de línea en la base de datos pueden contener el símbolo de conversión ('\r' o '\r\n' ), así como el símbolo de separación de valores establecido en el parámetro separator. En este caso, deberemos usar obligatoriamente la bandera DATABASE_EXPORT_QUOTED_STRINGS en el parámetro flags. Si se da esta bandera, todas las líneas mostradas finalizarán en comillas dobles, y si en una línea se contienen comillas dobles, serán sustituidas por dos comillas dobles.
Identificador |
Descripción |
---|---|
DATABASE_EXPORT_HEADER |
Mostrar los nombres de los campos en la primera línea |
DATABASE_EXPORT_INDEX |
Mostrar los números de las líneas |
DATABASE_EXPORT_NO_BOM |
No incorporar la etiqueta BOM al inicio del archivo (por defecto, BOM se incorpora) |
DATABASE_EXPORT_CRLF |
Para trasladar una línea, se utiliza CRLF (por defecto, LF) |
DATABASE_EXPORT_APPEND |
Añadir datos al final de un archivo existente (por defecto, el archivo se reescribe). Si el archivo no existe, será creado. |
DATABASE_EXPORT_QUOTED_STRINGS |
Mostrar los valores de línea entre comillas dobles. |
DATABASE_EXPORT_COMMON_FOLDER |
El archivo CSV se creará en la carpeta general de todos los terminales de cliente \Terminal\Common\File. |
Ejemplo:
input int InpRates=100;
|
Ver también