Download the PHP package ray/aura-sql-module without Composer
On this page you can find all versions of the php package ray/aura-sql-module. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ray/aura-sql-module
More information about ray/aura-sql-module
Files in ray/aura-sql-module
Informations about the package aura-sql-module
Ray.AuraSqlModule
Installation
Composer install
$ composer require ray/aura-sql-module
Module install
Use AuraSqlEnvModule to get the value from the environment variable each time at runtime, instead of specifying the value directly.
DI trait
-
AuraSqlInject for
Aura\Sql\ExtendedPdoInterface
interfaceReplication
Installing
AuraSqlReplicationModule
using aconnection locator
for master/slave connections.
You will now have a slave db connection when using HTTP GET, or a master db connection in other HTTP methods.
Multiple DB
You may want to inject different connection destinations on the same DB interface with @Named($qaulifier)
annotation.
Two modules are provided. NamedPdoModule
is for non replication use. and AuraSqlReplicationModule
is for replication use.
with no replication
Use NamedPdoModule
to inject different named Pdo
instance for non Replication use.
For instance, This module install log_db
named Pdo
instance.
Or
php class AppModule extends AbstractModule { protected function configure() { $this->install(new AuraSqlReplicationModule($locator, 'log_db')); } }
## Transaction
Any method marked with `@Transactional` will have a transaction started before, and ended after it is called.
## Query Builder
[Aura.SqlQuery](https://github.com/auraphp/Aura.SqlQuery) provides query builders for MySQL, Postgres, SQLite, and Microsoft SQL Server. Following four interfaces are bound and setter trait for them are available.
QueryBuilder interface
* `Aura\SqlQuery\Common\SelectInterface`
* `Aura\SqlQuery\Common\InsertInterface`
* `Aura\SqlQuery\Common\UpdateInterface`
* `Aura\SqlQuery\Common\DeleteInterface`
QueryBuilder setter trait
* `Ray\AuraSqlModule\AuraSqlSelectInject`
* `Ray\AuraSqlModule\AuraSqlInsertInject`
* `Ray\AuraSqlModule\AuraSqlUpdateInject`
* `Ray\AuraSqlModule\AuraSqlDeleteInject`
## Pagination
Pagination service is provided for both `ExtendedPdo` raw sql and `Select` query builder.
**ExtendedPdo**
**Select query builder**
An array access with page number returns `Page` value object.
It is iteratable.
### View
The view template can be changed with binding. See more at [Pagerfanta](https://github.com/whiteoctober/Pagerfanta#views).
## Profile
To log SQL execution, install `AuraSqlProfileModule`.
It will be logged by a logger bound to the [PSR-3](https://www.php-fig.org/psr/psr-3/) logger. This example binds a minimal function logger created in an unnamed class.
All versions of aura-sql-module with dependencies
ext-pdo Version *
ray/di Version ^2.13.1
ray/aop Version ^2.10.4
aura/sql Version ^4.0 || ^5.0
aura/sqlquery Version ^2.7.1 || 3.x-dev
pagerfanta/pagerfanta Version ^3.5
rize/uri-template Version ^0.3.4
doctrine/annotations Version ^1.11
psr/log Version ^1.1 || ^2.0 || ^3.0
symfony/polyfill-php81 Version ^1.24