Mudanças entre as edições de "Função @EXPRESSAODB"
(Criou página com 'A função @EXPRESSAODB considera a expressão informada apenas para os bancos de dados informados. Códigos dos bancos de dados: *1 = SQL Server *2 = Oracle *3 = Firebird *4...') |
(→Exemplos) |
||
(2 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
− | A função @EXPRESSAODB | + | A função @EXPRESSAODB permite a execução dinâmica de expressões SQL dentro de uma consulta. Ela é útil quando se deseja construir trechos de SQL de forma parametrizada ou condicional, melhorando a flexibilidade das consultas. |
− | + | ==='''Sintaxe'''=== | |
− | + | ||
− | + | @EXPRESSAODB("AS SELECAO",[1,4]) | |
− | + | ||
− | + | ==='''Parâmetros'''=== | |
+ | |||
+ | {| class="wikitable" style="width: 100%" | ||
+ | ! Nome | ||
+ | !Banco | ||
+ | !Descrição | ||
+ | |- | ||
+ | |@EXPRESSAODB | ||
+ | |PostgreSQL | ||
+ | |EXECUTE | ||
+ | |- | ||
+ | |- | ||
+ | |@EXPRESSAODB | ||
+ | |Oracle | ||
+ | |EXECUTE IMMEDIATE | ||
+ | |- | ||
+ | |@EXPRESSAODB | ||
+ | |FireBird | ||
+ | |EXECUTE STATEMENT | ||
+ | |- | ||
+ | |@EXPRESSAODB | ||
+ | |SQLServer | ||
+ | |EXEC sp_executesql | ||
+ | |- | ||
+ | |} | ||
− | ===''' | + | ==='''Exemplos'''=== |
+ | |||
+ | procedure ConsultaDinamica; | ||
+ | var | ||
+ | Q: TPHQuery; | ||
+ | begin | ||
+ | try | ||
+ | Q := NewPHQuery; | ||
+ | Q.Add('SELECT * FROM CLIENTES ' + | ||
+ | 'WHERE @EXPRESSAODB("''NOME LIKE ''''A%'''' '')'",[1,3]); | ||
+ | finally | ||
+ | Q.Free; | ||
+ | end; | ||
+ | end; | ||
− | + | begin | |
+ | ConsultaDinamica; | ||
+ | end. |
Edição atual tal como às 09h54min de 1 de março de 2025
A função @EXPRESSAODB permite a execução dinâmica de expressões SQL dentro de uma consulta. Ela é útil quando se deseja construir trechos de SQL de forma parametrizada ou condicional, melhorando a flexibilidade das consultas.
Sintaxe
@EXPRESSAODB("AS SELECAO",[1,4])
Parâmetros
Nome | Banco | Descrição |
---|---|---|
@EXPRESSAODB | PostgreSQL | EXECUTE |
@EXPRESSAODB | Oracle | EXECUTE IMMEDIATE |
@EXPRESSAODB | FireBird | EXECUTE STATEMENT |
@EXPRESSAODB | SQLServer | EXEC sp_executesql |
Exemplos
procedure ConsultaDinamica; var Q: TPHQuery; begin try Q := NewPHQuery; Q.Add('SELECT * FROM CLIENTES ' + 'WHERE @EXPRESSAODB("NOME LIKE 'A%' )'",[1,3]); finally Q.Free; end; end;
begin ConsultaDinamica; end.