- 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 uma tabela ou resultado sobre a execução da consulta SQL para um arquivo CSV. O arquivo é criado com codificação UTF-8.
long DatabaseExport(
|
Parâmetros
database
[in] Identificador do banco de dados, obtido em DatabaseOpen().
table_or_sql
[in] Nome da tabela ou o texto da consulta SQL, cujos resultados serão exportados para o arquivo especificado.
filename
[in] Nome do arquivo para exportar dados. O caminho é definido em relação à pasta MQL5\Files.
flags
[in] Combinação de sinalizadores a partir da enumeração ENUM_DATABASE_EXPORT_FLAGS.
separator
[in] Separador de dados. Se especificado NULL, como separador será utilizado o símbolo de tabulação '\t'. Linha vazia "" é considerada um delimitador válido, mas o arquivo CSV não pode ser lido como tabela, pois será um conjunto de linhas.
Valor retornado
Retorna o número de registros exportados ou um valor negativo em caso de erro. Para obter o código de erro, use GetLastError(), respostas possíveis:
- ERR_INTERNAL_ERROR (4001) erro crítico de tempo de execução do sistema;
- ERR_INVALID_PARAMETER (4003) caminho para o arquivo de banco de dados contendo uma string vazia ou definida uma combinação incompatível de sinalizadores;
- ERR_NOT_ENOUGH_MEMORY (4004) memória insuficiente;
- ERR_FUNCTION_NOT_ALLOWED(4014) o canal especificado não é permitido;
- ERR_PROGRAM_STOPPED(4022) operação cancelada (o programa MQL parou);
- ERR_WRONG_FILENAME (5002) - nome de arquivo inválido;
- ERR_TOO_LONG_FILENAME (5003) - o caminho absoluto para o arquivo excedeu o tamanho máximo;
- ERR_CANNOT_OPEN_FILE(5004) erro ao abrir o arquivo para gravação;
- ERR_FILE_WRITEERROR(5026) erro ao gravar no arquivo;
- ERR_DATABASE_INTERNAL (5120) erro interno do banco de dados;
- ERR_DATABASE_INVALID_HANDLE (5121) identificador de banco de dados inválido;
- ERR_DATABASE_QUERY_PREPARE(5125) erro ao criar a consulta;
- ERR_DATABASE_QUERY_NOT_READONLY somente é permitida uma solicitação de leitura.
Observação
Se os resultados da consulta forem exportados, a consulta SQL deverá começar com "SELECT" ou "select". Em outras palavras, a consulta SQL não pode alterar o estado do banco de dados, caso contrário DatabaseExport() falhará.
Os valores de string no banco de dados podem conter um caractere de conversão ('\r' ou '\r\n' ), além de um caractere separador de valores especificado no parâmetro separator. Nesse caso, é necessário usar o sinalizador DATABASE_EXPORT_QUOTED_STRINGS no parâmetro flags. Se esse sinalizador estiver presente, todas as linhas exibidas serão colocadas entre aspas duplas, mas se a linha contiver aspas duplas, ela será substituída por duas aspas duplas.
Identificador |
Descrição |
---|---|
DATABASE_EXPORT_HEADER |
Exibe os nomes dos campos na primeira linha |
DATABASE_EXPORT_INDEX |
Exibe os números das linhas |
DATABASE_EXPORT_NO_BOM |
Não insere uma etiqueta BOM no início do arquivo (a BOM é inserida por padrão) |
DATABASE_EXPORT_CRLF |
Usa CRLF (por padrão, LF) para quebras de linha |
DATABASE_EXPORT_APPEND |
Adiciona dados ao final de um arquivo existente (por padrão, o arquivo é sobregravado). Se o arquivo não existir, ele será criado. |
DATABASE_EXPORT_QUOTED_STRINGS |
Exibe valores de string em aspas duplas. |
DATABASE_EXPORT_COMMON_FOLDER |
O arquivo CSV será criado na pasta compartilhada de todos os terminais \Terminal\Common\File. |
Exemplo:
input int InpRates=100;
|
Veja também