ExecuteSQLe

Executa uma instrução de consulta SQL para a ocorrência de tabela especificada em um arquivo do FileMaker Pro e, se ocorrer um erro, retorna ? seguido por uma mensagem de erro.

Formato

ExecuteSQLe ( sqlQuery ; fieldSeparator ; rowSeparator { ; arguments... } )

Parâmetros

Consulte Função ExecuteSQL.

Tipo de dados retornado

texto

Originada na versão

21.1.1

Descrição

O ExecuteSQLe é idêntico à função Função ExecuteSQL, com a diferença que, se ocorrer um erro durante a análise ou execução da consulta, o ExecuteSQLe retorna um erro neste formato:

? ERROR: FQLxxxx/(linha:desvio): mensagem

sendo:

  • xxxx um código de erro numérico de linguagem de consulta FileMaker, não relacionado aos Códigos de erro do FileMaker

  • linha e desvio são o número da linha e desvio até o caractere onde o erro começa no parâmetro sqlQuery

  • mensagem é uma descrição do erro

Apenas um erro é retornado por vez. Se houver mais de um erro, o outro erro será retornado após a resolução do erro atual.

Exemplo 1

Começando pelo Exemplo 1 para ExecuteSQL, altere o cálculo para usar a função ExecuteSQLe. Para ver uma mensagem de erro detalhada, altere a consulta para que ela se refira a um campo inexistente chamado Título:

Copiar
ExecuteSQLe ( "SELECT Title FROM Employees WHERE EmpID = 1"; ""; "" )

Isso retorna:

? ERROR: FQL0007/(1:7): a coluna "Título" não existe em nenhuma tabela no escopo da referência da coluna.

Exemplo 2

Define uma variável para o resultado da consulta no Exemplo 1 e, em seguida, verifica se o resultado começa com ?. Se sim, exibe o resto do resultado (a mensagem de erro) e sai do script.

Copiar
Definir variável [ $result ; Valor: ExecuteSQLe ( "SELECT Title FROM Employees WHERE EmpID = 1"; ""; "" ) ]
Se [ Left ( $result ; 1 ) = "?" ]
    Mostrar caixa de diálogo personalizada [ Right ( $result ; Length ( $result ) - 2 ) ]
    Sair do script [ Resultado de texto: "error" ]
End If