crankydragon / zsql-multiplex
There is no license information available for the latest version (v0.2.0) of this package.
v0.2.0
2016-08-19 22:58 UTC
Requires
- jbboehr/zsql: >=0.3.4
Requires (Dev)
- apigen/apigen: 2.8.*
- phpunit/php-text-template: 1.1.*
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2024-11-05 04:04:56 UTC
README
A drop in replacement for zsql\Database with support for read/write splitting.
Usage
$database = new \zsql\Multiplex($reader, $writer); // select runs against $reader $database->select() ->from('tableName') ->where('columnName', 'value') ->limit(1) ->query(); // insert runs against $writer $id = $database->insert() ->ignore() ->into('tableName') ->value('columnName', 'value') ->value('otherColumnName', 'otherValue') ->query(); // update runs against $writer $database->update() ->table('tableName') ->set('columnName', 'value') ->set('someColumn', new zsql\Expression('NOW()')) ->where('otherColumnName', 'otherValue') ->limit(1) ->query(); // delete runs against $writer $database->delete() ->from('tableName') ->where('columnName', 'value') ->limit(1) ->query(); // ensure that the next query uses the $writer $insert = $database->query('SET @num := 1'); $result = $database->useWriter() ->query('SELECT @num') ->fetchColumn();