Download the PHP package jheferson-br/tquery without Composer

On this page you can find all versions of the php package jheferson-br/tquery. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package tquery

TQuery

Sobre o Componente

A classe TQuery foi desenvolvida para trazer para o Adianti framework uma abordagem diferente na montagem e execução das querys.

Com ela é possível executar arquivos '.sql' sendo possível separar as instruções SQL do código PHP.

Com isso temos uma melhor legibilidade do código SQL.

Instalação

Como se trata de um pacote composer, basta usar o comando:

Exemplo de Uso

Para entendermos melhor como a classe funciona, veja este exemplo simples.

Suponhamos que precisamos executar a seguinte instrução no banco de dados para limpar as tabelas do sistema:

Que está salvo na pasta app/querys/ do projeto, no arquivo LimpaTabelas.sql.

Usando a classe TQuery, ficaria assim:

Note que a classe TQuery precisa de uma transação aberta com o TTransaction para ser executada, mantendo o padrão do Adianti Framework.

Além disso todos os comandos executados com o metodo execute() serão logadas no sistema de logs do Adianti.

A TQuery também é capaz de excutar querys de consultas, como joins complexos. Muitas vezes utilizar uma View como é recomentando para o framework se torna algo oneroso de dar manutenção.

Pensando nisso foi desenvolvido o metodo load() que pode receber um TCriteria nativo do framework como parâmetro, mantendo a compatibilidade com o framework.

Imagine a necessidade de trazer um join complexo como este:

Note que nas condições da query existe um mnemônico denominado {{WHERE}}. Este mnemônico é padrão no TQuery e seu objetivo é definir o local onde será incluido as condições WHERE da consulta.

Veja como ficaria o codigo em php:

Note que a TQuery se comporta de forma semelhante a TRepository

Tambem é possível passar parâmetros para as querys usando mnemônicos customizados. Isso pode ser útil quando queremos enviar um trecho de código SQL para o TQuery incluir na query.

Veja:

Note que a query em questão, possui varios mnemônicos customizados como {{poa_cod}} e {{cnpj}} Para enviar para a TQuery os dados para seu mineomonico customizado, basta enviar como segundo parametro no construtor do objeto, um array associativo com as chaves mantendo o mesmo nome do mineomonico.

Veja um exemplo para a execução da query anterior:

Tambem é possível setar os valores dos mnemônicos atraves do método setParams quer recebe como parâmetro o vetor com os valores. Veja como ficaria:

Atenção

Nunca use TQuery em telas com inputs de usuários, para a listagem de dados, pois a mesma não possui proteção contra SQL Injection, afinal existe a possibilidade de enviar trechos de códigos para dentro da instrução SQL.

A proteção contra SQL Injection só funciona no método load que recebe um TCretéria que por sua vez, ja tem essa proteção.

Então tome cuidado ao implementar a TQuery, para não abrir uma falha de segurança no seu sistema.

A TQuery é mais indicada para rotinas internas, sem a interferencia dos usuários.


All versions of tquery with dependencies

PHP Build Version
Package Version
No informations.
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package jheferson-br/tquery contains the following files

Loading the files please wait ....