Descrição:
Classe com métodos estáticos que faz a execução de uma query no DBAccess utilizando do cache de queries.
O cache é mantido na DBAPI e consome uma quantidade de memória proporcional ao retorno da query.
Caso EXATAMENTE a mesma query seja executada, o retorno será diretamente do cache da DBAPI, tendo assim uma performance muito superior a uma nova consulta no banco de dados.
Métodos:
OpenQuery
Descrição:
Executa uma query no banco de dados e faz o cache da mesma
Sintaxe:
FwExecCachedQuery():OpenQuery( <cQuery> , <cAlias>, <aSetField> , <cDriver> , <cLifeTime> , <cTimeOut> )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|
cQuery | Caractere | Query a ser executada | X |
|
cAlias | Caractere | Alias no qual a query será aberta |
| X |
aSetField | Array | Array com os campos para execução de TCSetField com a estrutura |
|
|
cDriver | Caractere | Driver de abertura da tabela |
|
|
cLifeTime | Caractere | Define se a query vai ficar no cache do DBAccess e qual o tempo de vida dela em segundos | X |
|
cTimeOut | Caractere | Define se a query vai ficar no cache do DBAccess e qual o timeout dela em segundos | X |
|
Retorno:
cAlias → Alias no qual a query foi aberta
ExecScalar
Descrição:
Executa uma query no banco de dados, fazendo cache da mesma e retornando apenas a primeira coluna da primeira linha
Sintaxe:
FwExecCachedQuery():ExecScalar( <cQuery> , <cColumn> , <cLifeTime> , <cTimeOut> )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|
cQuery | Caractere | Query a ser executada | X |
|
cColumn | Caractere | Nome da coluna a ser retornada | X |
|
cLifeTime | Caractere | Define se a query vai ficar no cache do DBAccess e qual o tempo de vida dela em segundos | X |
|
cTimeOut | Caractere | Define se a query vai ficar no cache do DBAccess e qual o timeout dela em segundos | X |
|
HTML |
---|
<style>
div.theme-default .ia-splitter #main {
margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
display: none;
}
#main {
padding-left: 10px;
padding-right: 10px;
overflow-x: hidden;
}
.aui-header-primary .aui-nav, .aui-page-panel {
margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
margin-left: 0px !important;
}
.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after {
background: #FF9900; !important
}
.menu-item.active-tab {
border-bottom: none !important;
}
</style>
|